Transparencia Sin Intermediarios
Criptografía Autónoma
En Rifama la confianza no se promete, se demuestra matemáticamente. Hemos reemplazado los sorteos manuales propensos a errores y fraudes por un protocolo determinístico inalterable.
Sello SHA-256 de Inmutabilidad
Al crear cada rifa, generamos una huella digital criptográfica (hash SHA-256). Si se altera la cantidad de números, la fecha de sorteo, el premio o el creador, el sello se rompe alertando de la manipulación inmediatamente.
Ausencia Total de Control Humano
Nadie (ni el creador de la rifa, ni los compradores, ni los ingenieros de Rifama) tiene acceso físico ni lógico para elegir un ganador "a dedo". El sorteo se ejecuta mediante contratos determinísticos autónomos.
Auditoría 100% Autónoma
Creemos en la verificación independiente. Publicamos la Semilla única de la rifa y la fuente de entropía para que cualquier persona en el planeta pueda auditar y recalcular el ganador de forma externa en segundos.
¿Cómo se elige matemáticamente al ganador?
El motor de sorteos de Rifama utiliza una técnica matemática llamada Alineación Criptográfica Determinística. Cuando la rifa llega a su fin, el número ganador se calcula utilizando dos variables esenciales:
Es un string Base64 generado en base a los parámetros fijos de tu rifa creados el primer día. Actúa como el ADN de la rifa.
Un factor de aleatoriedad del mundo real tomado en el momento del sorteo a través de la API pública de Random.org (o una firma criptográfica interna si el servicio no está disponible). Es imposible de predecir o sesgar.
La Fórmula Matemática por Rondas
Para sorteos de múltiples premios (hasta 5 ganadores), el motor de sorteos de Rifama realiza el cálculo en rondas sucesivas de forma determinista para garantizar que un mismo comprador/número no pueda ganar más de un premio (exclusión mutua):
Luego de cada ronda, el boleto ganador en `Ganador_Index` es retirado de la lista de boletos participantes para la siguiente ronda.
¿Por qué es este método infalible?
- Criptográficamente Seguro: El hash SHA-256 es una función matemática de un solo sentido. Es computacionalmente imposible revertirla o encontrar colisiones para forzar un ganador.
- Verificable por Cualquiera: Debido al determinismo del algoritmo, si ingresas los mismos inputs en cualquier computadora del mundo, el resultado de todos los ganadores será exactamente el mismo.
- Garantía de Exclusión Mutua: Al eliminar el número ganador de la lista de números disponibles para la siguiente ronda, garantizamos matemáticamente que no haya ganadores duplicados dentro de la misma rifa.
Auditoría Autónoma en tu PC
Copiá y ejecutá este script en Node.js para verificar cualquier sorteo multi-ganador de Rifama.
// Script de Verificación Autónoma de Sorteos por Rondas - Rifama
const crypto = require("crypto");
/**
* Simula el motor de sorteos oficial determinista de Rifama por rondas.
* @param {string} finalSeed Semilla final del sorteo (generada por Random.org o interna)
* @param {string} raffleId ID único de la rifa
* @param {Array<number|string>} boletosVendidos Lista de números de boletos vendidos (ej: [0, 4, 12, 55, 99])
* @param {number} totalPremios Cantidad de premios a sortear (1 a 5)
*/
function auditarSorteoMultiPremios(finalSeed, raffleId, boletosVendidos, totalPremios = 1) {
// Clonar la lista y ordenar para asegurar el orden determinista inicial
const poolParticipantes = [...boletosVendidos].sort((a, b) => Number(a) - Number(b));
const resultados = [];
console.log(`Participantes iniciales (${poolParticipantes.length}):`, poolParticipantes);
for (let puesto = 1; puesto <= totalPremios; puesto++) {
if (poolParticipantes.length === 0) {
resultados.push({ puesto, ganador: "Vacante", hash: "" });
continue;
}
// Fórmula oficial de Rifama por ronda
const hashInput = `${finalSeed}-${raffleId}-${poolParticipantes.length}-${puesto}`;
const hash = crypto.createHash("sha256").update(hashInput).digest("hex");
// Convertir primer segmento de hash a BigInt para cálculo de módulo equiprobable
const bigIntHash = BigInt("0x" + hash.slice(0, 16));
const winnerIndex = Number(bigIntHash % BigInt(poolParticipantes.length));
const boletoGanador = poolParticipantes[winnerIndex];
resultados.push({
puesto: `${puesto}° Premio`,
boletoGanador: boletoGanador,
hashInputUsado: hashInput,
hashHex: hash
});
// Exclusión mutua: eliminar al ganador de esta ronda para la siguiente
poolParticipantes.splice(winnerIndex, 1);
}
return resultados;
}
// --- DATOS DEL SORTEO A AUDITAR ---
const finalSeed = "ingresa_aqui_la_semilla_del_sorteo";
const raffleId = "ingresa_aqui_el_id_de_la_rifa";
const boletosVendidos = [10, 24, 35, 48, 59, 72, 85, 99]; // Lista ordenada de números vendidos
const cantidadPremios = 3; // Cantidad de premios configurados
console.log("--- RESULTADO DE LA AUDITORÍA DE RONDAS ---");
console.log(JSON.stringify(auditarSorteoMultiPremios(finalSeed, raffleId, boletosVendidos, cantidadPremios), null, 2));Preguntas Frecuentes de Transparencia
¿Puede Rifama saber el ganador antes del sorteo?
Absolutamente no. La variable de entropía final sólo se conoce al momento del sorteo y proviene de un ente descentralizado e incorruptible del mundo exterior. Sin esa variable de entropía final, es imposible calcular el resultado del hash.
¿Qué pasa si el organizador de la rifa no vende todos los números?
El protocolo de Rifama siempre realiza el cálculo determinista equiprobable en base a los números participantes. Si la rifa fue configurada para sortearse al venderse todo, se esperará a completar el cupo. Si es por fecha, el cálculo se ajustará en base al total de números activos de forma justa.
¿Por qué este sistema es más seguro que un bolillero tradicional?
Los bolilleros manuales o sorteos en vivo pueden manipularse mediante técnicas físicas, edición de video o interrupción de transmisión. El sistema criptográfico de Rifama, al ser puramente matemático e inmutable, puede auditarse de forma retrospectiva por miles de personas en simultáneo asegurando un resultado inapelable.
Sorteá con la Confianza de Rifama
Creá tu rifa hoy y brindale a tus compradores seguridad criptográfica verificable.
Comenzar ahora