17 lines
545 B
Plaintext
17 lines
545 B
Plaintext
procedure main()
|
|
ctext := caesar(ptext := map("The quick brown fox jumped over the lazy dog"))
|
|
dtext := caesar(ctext,,"decrypt")
|
|
write("Plain text = ",image(ptext))
|
|
write("Encphered text = ",image(ctext))
|
|
write("Decphered text = ",image(dtext))
|
|
end
|
|
|
|
procedure caesar(text,k,mode) #: mono-alphabetic shift cipher
|
|
/k := 3
|
|
k := (((k % *&lcase) + *&lcase) % *&lcase) + 1
|
|
case mode of {
|
|
&null|"e"|"encrypt": return map(text,&lcase,(&lcase||&lcase)[k+:*&lcase])
|
|
"d"|"decrypt" : return map(text,(&lcase||&lcase)[k+:*&lcase],&lcase)
|
|
}
|
|
end
|