RSA Encryption Library
The RSA Encryption Library (REL) is a library that provides developers with a simple encryption method or as a robust way to make digital signatures.
Installing REL
Usage
To use REL, you need to follow 2 simple steps:
Table of Functions
Example Program:
If you have any questions or bug reports then feel free to join our Discord server below, happy coding!
The RSA Encryption Library (REL) is a library that provides developers with a simple encryption method or as a robust way to make digital signatures.
Installing REL
- Copy REL from the spoiler below.
- Create a .mscx file (name and location is irrelevant).
- Open the file.
- Paste REL into the file and save.
24
{"compiler_version":2.0}
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
{"compiler_version":2.0}
xXk1zB0HcuYckaUIHCFRYITRA7JBoZYHxLFKJE7eN/qIusD9DPvTGlhqKxWf8Rbq
K+csazXJrODQiO/o7CuHwotxz1+mO1kGEtNlVB2fWZpnHA3JR2vrPpxlZDcan/jg
9Jqw3pwjfIaMe8lBaYWIc2H+B7C4u5jVgXfxE+hrfVuC8QWuxdQkno3aQb5vYW00
4MysWbyjk6qZdsmmNT57ifKUYtCpFPmhLlWWeUIfYapzbjsn6RZZ6sisMMjnhsZO
twFjtR0pB/bTKKwTDdbuFX/CMVw8NffE5/lTXZUu9IDtE1jwHtt5ShifHxr3ZPma
gu3rAdUIZxXdV+FKqa4jcfTGqbQh0LLA3z9C3I9ACmIolW4eH8VeECq0ro6KoqjW
Tp6c82cIJnPxQhBDN/IwpTMkaBdvdL7+vDDYDOqnvGjDvi3xXK/BKgoMrBxrTZGv
3XXdcK/112hnhzZYukZuL2wcJ15XjBMqM+F7S8kT68aM9LSbJ+tr7UM9Z5wfHRDL
DyjWNxi9RJadv43+s/uRyZsf560VNbtoN9Hb9QvGoyASTp7jJ9LcO3lAEsu1kOfJ
6LvkhAQ1723yUKFtDro6Rx3pzXCshEkfOCBkB96kw5aXQRVhjAifKulLQL+5EI2m
T18C1jzvi+a1tf+vHOUWJuMHZxzvnK9i1Art3CveFvLA/eIfHSMKcMApls9dAxsO
vsu4I3sGnOZ8NPL5XA4m14Jidz2fWuUVsZFQleb05AEO5C24MX51DAjjne1EfqQ1
aiFOmqOlgYIsPw7XZwKAHbin9ENT0jflOxud4EPlBf1IqrKIlrjcugvn0xj/ZWbe
g8q4rjo4Kdq1mZziiMVa6Eanc/M0mtNv6tK/lOJnIdJYOXed1x1xjNvl7US1JxqN
P3Nry8jfx81n/vBL4jyaH5yYp+fWTyd6/yIcx3Yv4LlRors3qGOQVsQF4q4q5xVa
qcJvSvZLb/VCPgSwAnh/ax3TObD7u2VEZpVdJc0oQ50kvhtDr3oxNaSm6+fVFX39
dYKqrCHtJ9bWRVU1Bldxcz80tOmEo/t03Hp1gAdZOrDAgNvUbCpDM2jiQsCDRB3R
UIIYdZiuN5wusDh/o6+nx9g1HVKGeC9TfhQaDiFC3lq/97euCHF/ZxryIbxZ9+6y
VisI7d/kfB4hzCqTZyojXcyglukDD4pYI9m0sNisHBabYKMrQhtLtxGQWPCAFc7t
aEG+EJuYTR4yeuuS+FCeQjpnie6m8MGq7M8Y9ohCKKn2e3kNczCbmAH7BNaB/Fbm
+v18QQGa/S9Hy1IDUMi7FlfCmfx8MpwTxdylsxc9XPuFmlAVxve0FZQacd095hmQ
38QG0p9ou8ZrNuvH8KATngaCyt9lLY0K8TuqkM9WFPiptCWXzYIxlrNH2mtZbySY
FbJJ3nHBd1UZ8DA4ssnWa0AnUztAz7qbrZSchAKs5RqEefOOw/vNXURKyMpbX72Y
TrbhvoY8YQxpJEVOH8k7amAkbJhBXw/rCRT3J4+MHcI3u2v/taO6T8dQOySxHx/Z
ZaiaHmE9adwa30oGAQh3rQHVnzt8or15bxm0alWDCxTN56dcdT8VV9Z7oGIvCGyx
f0fsJGcQRK63sfAzsrLlpobth5bNLj0AmPK53olyahlMjt1FoMWoAdjLhmGeTkyw
9OgHdLxLmwKKqjDp8zP0F0biAWRNZo4yBwmtMAX8kCCOE1p0Y+fBkB2wJbg0k6zo
BEcI4Pt5zz8vGv8k0iv0LEUqKwGkH7al+r0hUAjkni5kAqXbTGSzRisTGJsOYBdo
yXuffeZxUvXawpQXb/lj0pHhHSWc7lTuPrW65d3nqmtGeTblOTpvOoIBM+SGH4Ke
SlfC8XZ4Y4wUP6xTd4FVLlkxr8EFs5cblr0SCiuPnP4dCnq367+NKgLjzPVwgalB
nr4fOxUzTdV2onwkAaLNiqSIyXPJopY/0W5jS9m2rRg9ff9BXmi1edUvn0Q+Y7e8
oh9nJGkZ9F/VfPEsfTuQGdTiJoHkIkeTMX55Ck1lfFb380v5lkoZki7QZOeKbK/8
TgJgN99QpStsMSEVVUkZWA+77ljhNZrwAXAj5VE6Sm25+6vRywpLtEnVdYO44C4I
bkryGLFPjJ+Y8fE0Jc8CBV1OdbayxkfUcb8rC+ORhNn4y8yM1OPblltVZpxdN0Uk
sEYYrjOROH0k8L6bXEWTG0HvqwsfYbipgfNYuq9I3egxmgyf/sCqzYOY1mXTloXV
gKWRRLRLna7qlQBqL+VxyYlm22v0uOt8MeO+xFGc/MrXJE5Ifpo7m7DZpnbgUcyb
FhVTPo8DQZ/F5TDj871dtUNfZfTDyADhb/5GPMMHPQ6b1vMu0VunMClW/PeevST8
7wtHGkOQdZzS1zF3zoLnwa+o7Xs8g//hwO8nApHboE8H0XUgBaLhvOvTv2CIH9WN
Z2AKLhAYDrO2WmkTfwNH8LQxiGLskbATG9lekU982qV45Ht8QaaLLlX2Lrbx9+tT
YZXr9SrGgf4pKORpOuLGkql8O3HOx5UZNBf2TfTgRwjiaYe3vDzSJOIfQn9p/XkV
7cBuZe8/Jm4FAZ4hOYhE6EOlyvSnOdvhUalE0wKOy3N//3esPWMHZyG+hYS6ej1D
RH3JNlOkBUlqI2MwBb8hm/RuT8EUi4XoHH2ier9uQO5SnIn5MjD2USUcEc46FLxk
2isqh6avQoRymFoDBjV8Su4xvbjHqP4vsL3gfLg3loXjw0pdNnIxp/QIrULtarn1
3hAM0ZZP52+JDi8JgfmVRPzXHXtRFuir5Om2bZLeKskfFqAf6yhSqE5BqMJnyXCb
uQcQegv3udmIfNpIxw4je6DvYmZsyCbg5/7PYyfkj3ZxVzkGFQhHkj7lqdir1KJP
3Ffa4NHPTITs3AAwkVJutHsZZaGNVXwmwyBONYZP/Dn6k+48XFGDwHhFZtZICtSa
mUAWFSd77GIXsmZA1nDY3O9fuOYVDio61EdYFmQK1XkLou283aGZryHmBQODuLTv
Mw6vc1tR9Uc6Agt774cZePBnLb2pw5npirSJ9aczy9YZcTrYa1DphYAAZ8ESJnXR
0RH9F0Vx8snhOPeZR5P5Tk7DsGgzTJUrN06dlmQJqoA2WmTpsrNTDBLeZJ34/xn7
V9d5w+0nwsrQ0IeuoJzlLHmseSCr30UE23R/ebpCH4JrHLQGkC1topuIpHg9K2Re
P2KpATa+f7jSm28wOkyenqrYKwO/WRcXldKgg5bgSLv7vBuSkIv5hv3KQm7Yu6A8
xX/rEQNV4oIfVnD2EyZFmm4l2uNW6afPuUnT/Q7vGecXZf8GjmWlUNm0bw8RCOfD
Uf/tGt0lG07J5ZYXKDbS4ClZfHd92fIgvGo5uyMK1CqqnKa3Ni2SbZKdVxOtRNiM
5dfm6ondIh90QiTl1l1nvlCN80cbUitagg6q+kv09kUOqXgsdKJ/zVLx24TcbuZr
wIPiVqf/vn/RbjEaMzGChcBr8QXl1hAuWKcDc3zAupWbt15W07eU0EGIxKmEBHR5
fe9qwi/PuNPlSDMHiREKPIvGZO14kOritEXPcdIn63YhJRfdoYMFOlOHetxhhv39
yCnv41nIfMrGiSMltQKyqmifUFKJoN6o8E2XrHzo/Cz563w3rYHqVt3gIZHPH213
dY1/yVWXUltbYHbwNlgivWHLubNkh89WsP8dyEX5m4ZlRnRtbcA1akerz1VJSXVH
3Irh+IcEE6f+ZvxrvzF/ZfEizIMaJDw/RpQevZErhRTRwx8NrAasyflqpmkC86ET
V5P1R6SE7BTtEa5p+Qs9mmVSQxYc+79Dobf4hsb+1m3yR1agrQPES44qf/azJ8Kl
jWJXIBJoLN/Z1/eCqlns2H3m96eWS8SRtsozZPjpyIIcZJ24k0mA+xEYMvmr0DN3
d9EHIHT+7W5UI5pwbne6vh7/ZGJ36Lb2DVlBhIsZ09ml1COlVhMerayKa8BuXc+L
eYv3d/xieZa/s24M1Fn87tunqFfy3cxdwkCmw/ldWkCuC7AsJrDRdFOf6Ovv/Dz9
sqwAGX6jpV0PGg5yP/z1tYz1x0kpF8E1nFercH5AEn0whg8KTZJX2njDPtIKCOnQ
ZR8GA6a30f/l8ksZpUYovIG2apKGsVAwpc/thgVcCGK36LZ8GRUbRmO6efvviKm2
88IL7gwJGvSYiYL6DmQkcV4j3SI2g34S+gvgpv4kpo/VM3nE6151nmS+VrFxGwZn
8egeo0xGPfqQybN6dTt/82562JA5n/OZjvQ4w3AmsB4f1fBist4mQ2C5FUxfe6cu
390wXsdbJaOG0y18cefgrBmf0hPKg4MPyIUlUCrtDVeDo30P2OTSZ3G2LHcycsiD
479K9Lgx6k7LMm4uUBBCU7RzAFCE3/CafOwD4JyWZ2BHXtJzGnoOp2xtoKSVzI1M
dbRb8CrecyT81JS5MmnTXLyDOf+PKu+5yoVaCW6Zo0H0zUbboKN0iJpikLSalgnp
evDSuVmkKk6qhkWCR5nywnCdpEt0lr/38SffIEjtGDIapImdp+VTqfbzB6IONE50
nwV/jBRargYqQ0O3blDI9BcB6REoZCQQlPwqbwVa5z5G4G0nrp/rx/y9h0a8Wwfy
IoDWj2D63BBR5ZS8THe9Khez+44SAqnokuLLvpy8qvGf/7ScUG4MVcST8qyVw6br
f6nJlJm/JL9T3h2pPW/5JmgW+iyRCHgWP+9KMRiUy8w9mKCtuxXZWKbxMIlQ6H3h
FckqGCzhOeEeMPukEvQpriBzqV0IrIl81kwk7EV8TsAxuXxTg9CCrQUEWOwy0zas
5ZkEY7wXMHHRIPd397OvW81c/h7SOkW1/TlJcAuhdAhiHkXekvCiVcM7ngz02Rcv
2YzNHWFb/E5oM6kUTYaWAol3nK3TdprVEEUt6twvBQrKn6p7H6+6U0myIM6ymYmR
F8I1gTNQmc25dJD7QqJETnl7jn5nJ12Wap5nymqJx862nCrVUPQtb9OZWjx7jLMx
nObYkr1fnWxZGTt/cqAVmMgojyZNAq2vAtyaC/Lrqwq+4eHUeU8qZI1oW/nWQetv
MWknyt+VmXZ9qEffjJxan1V1XbeHtC5FYd7apUXAMyI/1xvwbCgBpm9xm5gZaaFH
MmXh3kZ97otimOrhMBhfwlf8w9/pQGFRzTPyNeXdQRT7p7sKFrc7i9sqGRKs1FqU
Q7N2yNXwA+V9KP9UWwPa1pi1cQUoE1OhwUgD9urcI1sOc+eUe2OXS2CJmb0N5pR5
6yg/mhFk95EunL139TGgbHMh54GC9U1pd8ktPCyF9c4=
Usage
To use REL, you need to follow 2 simple steps:
- Make sure to "include REL.mscx".
- Add "RSALib RSA = new RSALib()" in your code.
Table of Functions
.mod(number, number) | Performs modulo of two numbers. |
.PowerMod(number, number, number) | Gives (a^b modulo c). |
.Factorize(number) | Find a factor of a given number. |
.GCD(number, number) | Finds the greatest common denominator of two numbers. |
.IsPrime(number) | Returns bool. |
.factor(number) | Returns array of found factors for given number. |
.KeyGen(number, number) | Generates an RSA key based on input range, low and high. |
.old_encrypt/old_decrypt(number, number, number) | Method to encrypt/decrypt single number. Requires, number - Private/Public Key - Exponent. |
.encrypt(number[], number, number) | Method to encrypt array of numbers. Requires, Array - Public Key - Exponent. |
.decrypt(number[], number, number) | Method to decrypt array of numbers. Requires, Array - Private Key - Exponent. |
Example Program:
Code:
using System;
using Console;
using Array;
using Application;
using Util;
using String;
using File;
include "RSALib.mscx";
RSALib RSA = new RSALib();
bool run = true;
// Used for converting ASCII to numbers.
string[] asciiTable = [
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z",
"[", "\\", "]", "^", "_", "`","-","!",
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
string[] options = ["1 > Gen Keys","2 > Encrypt","3 > Decrypt","4 > Exit"];
function showopt(){
Console.WriteLine("Please Enter an Option:");
number i = 1;
while(i <= Array.Length(options)){
Console.WriteLine(options[i]);
i = i + 1;
}
}
function genkey(number upper){
number[] keys = RSA.KeyGen(1,upper;
number i = 1;
while(i<=3){
Console.WriteLine(keys[i]);
i = i + 1;
}
}
Application.RequestAdminPrivilege();
while(run){
showopt();
string choice = Console.ReadLine();
if(choice == "1"){
Console.WriteLine("Enter Upper Range: ");
number upper = Util.ToNumber(Console.ReadLine());
genkey(upper);
}
if(choice == "2"){
Console.WriteLine("Enter Text:");
string text = Console.ReadLine();
string[] textar = new string[String.Length(text)];
number[] numar = new number[String.Length(text)];
number i = 1;
// Converts ASCII to numbers based on previous table
while(i<=String.Length(text)){
textar[i] = String.CharAt(text,i);
numar[i] = Array.IndexOf(asciiTable,textar[i]);
numar[i] = numar[i];
i = i + 1;
}
Console.WriteLine("");
Console.WriteLine("Enter Public Key:");
number public = Util.ToNumber(Console.ReadLine());
Console.WriteLine("");
Console.WriteLine("Enter Exponent:");
number exponent = Util.ToNumber(Console.ReadLine());
Console.WriteLine("");
number[] enc = RSA.encrypt(numar,public,exponent);
i = 1;
number y = i + 7;
string str = "";
while(i<=Array.Length(enc)){
y = i -7;
if(i==1){
str = Util.ToString(enc[i]);
}
else{
str = str..","..enc[i];
}
i = i + 1;
}
Console.WriteLine(str);
}
if(choice == "3"){
Console.WriteLine("Enter Code:");
string text = Console.ReadLine();
Console.WriteLine(text);
string[] textar = String.Split(text,",");
number[] numar = new number[Array.Length(textar)];
number i = 1;
while(i<=Array.Length(textar)){
numar[i] = Util.ToNumber(textar[i]);
i = i + 1;
}
Console.WriteLine("");
Console.WriteLine("Enter Private Key:");
number private = Util.ToNumber(Console.ReadLine());
Console.WriteLine(private);
Console.WriteLine("");
Console.WriteLine("Enter Exponent:");
number exponent = Util.ToNumber(Console.ReadLine());
Console.WriteLine(exponent);
Console.WriteLine("");
number[] dec = RSA.decrypt(numar,private,exponent);
i = 1;
string str = "";
while(i<=Array.Length(dec)){
number num = dec[i];
Console.WriteLine(num);
str = str..asciiTable[num];
i = i + 1;
}
Console.WriteLine(str);
}
if(choice == "4"){
Application.Exit();
}
}
If you have any questions or bug reports then feel free to join our Discord server below, happy coding!
Discord - Group Chat That’s All Fun & Games
Discord is great for playing games and chilling with friends, or even building a worldwide community. Customize your own space to talk, play, and hang out.
discord.gg
Last edited: