Librería de alto rendimiento resistente a ataques cuánticos construida en Rust con soporte WebAssembly.
npm install quantum_ark
# o
pnpm add quantum_ark<!DOCTYPE html>
<html>
<head>
<script type="module">
import init, * as quantumArk from 'https://cdn.jsdelivr.net/npm/quantum_ark/pkg/quantum_ark.js';
async function demo() {
await init();
const hash = quantumArk.quantum_ark_hash('contraseña', 'secreto');
console.log('Hash:', hash);
}
demo();
</script>
</head>
<body>
<h1>Demo Quantum ARK</h1>
</body>
</html>npm create vite@latest mi-app -- --template react
cd mi-app
npm install quantum_arkimport { useEffect, useState } from 'react';
import init, * as quantumArk from 'quantum_ark/pkg/quantum_ark.js';
export default function App() {
const [hash, setHash] = useState('');
const [cargado, setCargado] = useState(false);
useEffect(() => {
init().then(() => setCargado(true));
}, []);
const generarHash = () => {
setHash(quantumArk.quantum_ark_hash('contraseña', 'secreto'));
};
return cargado ? (
<div>
<button onClick={generarHash}>Generar Hash</button>
{hash && <p>{hash.substring(0, 50)}...</p>}
</div>
) : <div>Cargando...</div>;
}npx create-next-app@latest mi-app
cd mi-app
npm install quantum_ark'use client';
import { useEffect, useState } from 'react';
import init, * as quantumArk from 'quantum_ark/pkg/quantum_ark.js';
export default function Home() {
const [cargado, setCargado] = useState(false);
useEffect(() => {
init().then(() => setCargado(true));
}, []);
return cargado ? (
<button onClick={() => console.log(quantumArk.quantum_ark_hash('pwd', 'key'))}>
Hash
</button>
) : <div>Cargando...</div>;
}npm install express quantum_arkimport express from 'express';
import init, * as quantumArk from 'quantum_ark/pkg/quantum_ark.js';
const app = express();
let listo = false;
init().then(() => { listo = true; });
app.post('/hash', (req, res) => {
if (!listo) return res.status(503).end();
const hash = quantumArk.quantum_ark_hash(req.body.contraseña, req.body.clave);
res.json({ hash });
});
app.listen(3000);npm create vite@latest mi-app -- --template vue
cd mi-app
npm install quantum_ark<template>
<button @click="hash" :disabled="!cargado">Hash</button>
<p v-if="resultado">{{ resultado.substring(0, 50) }}...</p>
</template>
<script setup>
import { ref, onMounted } from 'vue';
import init, * as quantumArk from 'quantum_ark/pkg/quantum_ark.js';
const resultado = ref('');
const cargado = ref(false);
onMounted(async () => {
await init();
cargado.value = true;
});
const hash = () => {
resultado.value = quantumArk.quantum_ark_hash('contraseña', 'secreto');
};
</script>npm create vite@latest mi-app -- --template svelte
cd mi-app
npm install quantum_ark<script>
import { onMount } from 'svelte';
import init, * as quantumArk from 'quantum_ark/pkg/quantum_ark.js';
let resultado = '';
let cargado = false;
onMounted(async () => {
await init();
cargado = true;
});
function hash() {
resultado = quantumArk.quantum_ark_hash('contraseña', 'secreto');
}
</script>
<button on:click={hash} disabled={!cargado}>Hash</button>
{#if resultado}
<p>{resultado.substring(0, 50)}...</p>
{/if}npm install quantum_arkresources/js/quantum-ark.js:
import init, * as quantumArk from 'quantum_ark/pkg/quantum_ark.js';
let listo = false;
export async function inicializarQuantumArk() {
if (!listo) {
await init();
listo = true;
}
}
export const hash = (pwd, clave) => quantumArk.quantum_ark_hash(pwd, clave);
export const verificar = (pwd, clave, h) => quantumArk.quantum_ark_verify(pwd, clave, h);Hash estándar (más rápido)
Hash con HMAC (recomendado para producción)
Triple capa cuántica (máxima seguridad)
Verificar contraseña (tiempo constante)
Generar sal aleatoria
- ✅ Resistente a ataques cuánticos (basado en lattice)
- ✅ Red neuronal caótica (768 neuronas)
- ✅ Verificación en tiempo constante
- ✅ Compatible con WASM
- ✅ Funciona en todas partes: React, Vue, Svelte, Next.js, Express, Laravel, etc.
- ✅ Sin configuración necesaria
- ✅ Rápido y seguro
| Operación | Tiempo |
|---|---|
| quantum_ark_hash | ~50ms |
| quantum_ark_hash_with_hmac | ~100ms |
| quantum_ark_hash_extreme | ~150ms |
| quantum_ark_verify | ~50ms |
- Usa
quantum_ark_hash_with_hmac()en producción - Guarda la clave en variables de entorno
- Nunca registres contraseñas o hashes
- Usa HTTPS para transmisión
- Implementa limitación de velocidad
Ver SECURITY.md para más detalles.
MIT - Libre para uso comercial y personal
Ark Dev - Soluciones Criptográficas Avanzadas