StegCloak è un puro modulo di steganografia JavaScript progettato in stile di programmazione funzionale, per nascondere segreti all’interno del testo comprimendo e crittografando il segreto prima di occultarlo con speciali caratteri invisibili Unicode. Può essere utilizzato per filigranare in modo sicuro stringhe, script invisibili su pagine Web, testi sui social media o per qualsiasi altra comunicazione nascosta. Completamente invisibile!

Caratteristiche

  • Utilizza password e integrità HMAC
  • Crittograficamente sicuro, con AES-256-CTR.
  • Utilizza 6 caratteri invisibili in caratteri Unicode che funzionano ovunque nel Web: Tweet, Gmail, WhatsApp, Telegram, Instagram, Facebook e molti altri!
  • Massima compressione per ridurre il carico utile (LZ, Huffman).
  • Completamente invisibile, utilizza caratteri a larghezza zero invece di spazi o tabulazioni.
  • Super veloce: nasconde la fonte della pagina Wikipedia per la steganografia (800 righe e 205362 caratteri) all’interno di un testo di copertina di 3 parole in meno di un secondo.
  • È possibile nascondere i file nelle stringhe caricando il file nel cloud e nascondendo il collegamento nella stringa
  • Scritto in puro stile funzionale.
  • Utilizzo: disponibile come modulo API, CLI e anche interfaccia Web (ottimizzata con i web worker).

 

StegCloak Demo

Installazione

Utilizzando npm,

$ npm install -g stegcloak

Usando npm (per usarlo localmente nel tuo programma),

$ npm installa stegcloak

Come funziona

Utilizzo della CLI

Nascondere

$ stegcloak hide

Opzioni:

  hide [options] [secret] [cover]

  -fc, --fcover <file>      Extract cover text from file
  -fs, --fsecret <file>     Extract secret text from file
  -n, --nocrypt             If you don't need encryption (default: false)
  -i, --integrity           If additional security of preventing tampering is needed (default: false)
  -o, --output <output>     Stream the results to an output file
  -c, --config <file>       Config file
  -h, --help                display help for command

Svelare

$ stegcloak rivela

Opzioni:

  reveal [message]

  -f, --file <file>       Extract message from file
  -cp, --clip             Copy message directly from clipboard
  -o, --output <output>   Stream the secret to an output file
  -c, --config <file>     Config file
  -h, --help              display help for command

Supporto aggiuntivo

  • La variabile d’ambiente STEGCLOAK_PASSWORD, se impostata, verrà utilizzata di default come password.
  • Supporto del file di configurazione per configurare StegCloak CLI e per evitare richieste. Leggi i documenti di configurazione qui.

Utilizzo delle API

const  StegCloak  =  require ( 'stegcloak' ) ;

const  stegcloak  =  nuovo  StegCloak ( vero ,  falso ) ;   // Inizializza con crittografia true e hmac false per nascondere

// Questi argomenti vengono utilizzati solo durante hide

// Può essere modificato in seguito cambiando i flag booleani per stegcloak.encrypt e stegcloak.integrity

Cos’è l’HMAC e ne ho bisogno?

HMAC è un ulteriore passaggio di sicurezza delle impronte digitali intrapreso per la manomissione dei testi e per verificare se il messaggio ricevuto è stato effettivamente inviato dal mittente previsto. Se i dati vengono inviati tramite WhatsApp, Messenger o qualsiasi piattaforma di social media, questo è già stato risolto! Tuttavia, se stai usando StegCloak nel tuo programma per trasmettere e recuperare in sicurezza, questa opzione può essere abilitata e StegCloak se ne prende cura.

Nascondere

stegcloak.hide(secret, password, cover) -> string

const  magic  =  stegcloak . hide ( "Voldemort è tornato" ,  "malizia gestita" ,  "Il WiFi non funziona qui!" ) ;

// Utilizza stegcloak.encrypt e stegcloak.integrity booleani per l'offuscamento

console . log ( magia ) ;   // Il WiFi non funziona qui!

Svelare

stegcloak.reveal(data, password) -> string

const  secret  =  stegcloak . rivelare ( magia ,  "malizia gestita" ) ;

// Rileva automaticamente se la crittografia o i controlli di integrità sono stati eseguiti durante hide e agisce di conseguenza

console . log ( segreto ) ;  // Voldemort è tornato

Questo blog  mostra come puoi utilizzare l’API StegCloak per filigranare qualsiasi testo sul tuo sito web.

Importante

StegCloak non risolve il problema di Alice-Bob-Warden, è potente solo quando le persone non lo cercano e ti aiuta a farlo davvero bene, date le sue proprietà invisibili sul web! Potrebbe essere tranquillamente utilizzato per la filigrana nei forum, tweet invisibili, social media ecc. Per favore, non usarlo quando sai che c’è qualcuno che sta attivamente annusando i tuoi dati, guardando i caratteri Unicode attraverso uno strumento di analisi dei dati. In quel caso, anche se il segreto codificato non può essere decifrato, il fatto è che il Custode (intermediario) sa che è avvenuta una comunicazione segreta, perché avrebbe notato una quantità insolita di personaggi invisibili speciali.

Risorse

Si è fatto riferimento ai seguenti documenti per approfondimenti e comprensione dell’uso dei caratteri a larghezza zero nella steganografia.

  • Milad Tale di Ahvanooey, Qianmu Li, Jun Hou, Ahmed Raza Rajput e Chen Yini
Modern Text Hiding, Text Steganalysis, and Applications: A Comparative Analysis
  • Taleby Ahvanooey, Milad & Li, Qianmu & Hou, Jun & Dana Mazraeh, Hassan & Zhang, Jing.
AITSteg: An Innovative Text Steganography Technique for Hidden Transmission of Text Message via Social Media.
IEEE Access

https://github.com/kurolabs/stegcloak#readme

Twitter
Visit Us
LinkedIn
Share
YOUTUBE