Questo è un semplice metodo di crittografia che utilizza cifre PI per codificare un messaggio, il metodo è semplice:
La chiave è solo un numero intero positivo che indica dove inizia la finestra:
Data una stringa da crittografare, contenente solo lettere minuscole, senza spazi, ne prendi la lunghezza, quindi trovi l'ennesima cifra di PI e procedi quindi a spostare ogni lettera a destra per l'importo indicato dalla cifra.
Ad esempio, se la chiave è 2
e voglio codificare house
, prendo una finestra di 5 cifre dalla seconda: 14159
e poi diventa:
h -> i
o -> s
u -> v
s -> x
e -> n
a.- Il tuo programma / funzione / algoritmo riceverà due parametri, una stringa composta solo da lettere minuscole senza spazi e la chiave, che sarà solo un numero intero positivo compreso tra 1 (1 si riferisce a 3) e 1000, che potrebbe essere maggiore o meno poiché non sono del tutto sicuro del tempo necessario per calcolare il PI con detta precisione perché:
b.- Devi calcolare te stesso PI nel tuo codice, ecco una pagina web ordinata da confrontare con: Pi Day . L'input non dovrebbe mai farti calcolare PI oltre la cifra di 1000, il che significa che lunghezza (messaggio) + chiave <= 1000.
Con il calcolo di Pi, intendo non codificarlo nel tuo codice (sciocco per un codice golf) né usare alcuna costante incorporata nel tuo codice né alcuna identità trigonometrica (2 * acos (0)) né alcun riferimento web.
c.- L'output sarà solo la stringa crittografata.
Questa è una domanda di golf del codice, il codice più corto vince!
Accetterò la risposta vincente il 14 luglio 2014.
ArcCos(-1)
?