From b4a326d05d2aca748f3e36ff00b513ce3c2578f7 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 9 Sep 2015 14:57:55 +0200 Subject: Implement RSA in Ivy (APL) --- rsa.ivy | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 rsa.ivy diff --git a/rsa.ivy b/rsa.ivy new file mode 100644 index 0000000..433c801 --- /dev/null +++ b/rsa.ivy @@ -0,0 +1,20 @@ +op E public p = E, */p + +op E private p = + phi = */p-1 + d = 1 take (1 == (E * iota phi) mod phi) sel iota phi + d, */p + +op C rsa Key = (C ** Key[1]) mod Key[2] + +P = 11 101 +pub = 3 public P +priv = 3 private P + +msg = "test" +pub +priv + +ciphre = (code msg) rsa pub +ciphre +char ciphre rsa priv -- cgit v1.2.3