Code archives/Algorithms/small encryption algorithm for ints
This code has been declared by its author to be Public Domain code.
Download source code
| |||||
well I made this algorithm up recently then discovered it was already invented a while ago... anyway here it is working with integers. You can have a key as long as you like which is a definite plus :) | |||||
'make a file in notepad or whatever you like and call it myfile.bla and type in some random stuff... then this will encrypt/decrypt it rs:TStream = ReadFile("myfile.bla") ws:TStream = WriteFile("myfileencrypted.bla") encrypt(rs,ws,"12340987437643987234") CloseStream rs CloseStream ws rs:TStream = ReadFile("myfileencrypted.bla") Print "now lets encrypt it!" While Not Eof(rs) Print ReadByte(rs) Wend CloseStream rs rs:TStream = ReadFile("myfileencrypted.bla") ws:TStream = WriteFile("myfiledecrypted.bla") decrypt(rs,ws,"12340987437643987234") CloseStream rs CloseStream ws Print "now lets decrypt it!" rs:TStream = ReadFile("myfiledecrypted.bla") While Not Eof(rs) Print ReadByte(rs) Wend CloseStream rs Function Encrypt(rstream:TStream,wstream:TStream,key:String) 'the key is a set of numbers any length... "432197843" or "324" or "3244325" Local cnt:Int Local n:Byte Local leng:Int = Len(key) While Not Eof(rstream) n = (ReadByte(rstream) + Int(Mid(key,(cnt Mod leng)+1,1))) WriteByte(wstream,n) cnt:+1 Wend End Function Function Decrypt(rstream:TStream,wstream:TStream,key:String) Local cnt:Int Local n:Byte Local leng:Int = Len(key) While Not Eof(rstream) n = (ReadByte(rstream) - Int(Mid(key,(cnt Mod leng)+1,1))) 'the only difference in these functions is the minus sign... WriteByte(wstream,n) cnt:+1 Wend End Function |
Comments
| ||
edit: fixed to work for strings or whatever... any type of file!!! |
Code Archives Forum