2017-12-15

Navigation

Skip Navigation Links

Hash algorithms

Asymmetric Algorithms

Symmetric Cipher Algorithms

Encoding Algorithms

Compression Algorithms

Pseudo Random Number Algorithms

Steganography

Library Wrappers

String Comparison

Others

Syntax highlighting by Prism
PBCrypto.com Mirror

Pseudo asymmetric cipher

Algorithm creator(s)

n/a


PB author(s)

Tim Wisseman


Description

A demo algorithm that uses different keys for encrypting/decrypting.


Note

This is not a true asymmetric cipher.


Source

https://forum.powerbasic.com/forum/user-to-user-discussions/programming/18890-public-key-cryptography?t=18385


See also

n/a


Source Code

Download source code file pseudoasym.bas (Right-click -> "Save as ...")

'Assume:
'  Public Key 125, 53
'  Private Key 78, 13

DIM sMess AS STRING
DIM iMess AS INTEGER
DIM a AS INTEGER
DIM b AS INTEGER
DIM i AS INTEGER

   '// The message we are sending is just "h"
   sMess = "h"
   iMess = ASC(sMess)

   '// Public Key = 125 and 53
   a = 125
   b = 53

   a = 112 XOR a
   b = 123 XOR b
   i = iMess XOR a
   i = (i + b) MOD 255
   '// Your secret message
   PRINT "Your secert message is: "; STR$(i)
   '// Your incoming message is 179
   iMess = 179

   '// Private Key = 78 And 13
   a = 78
   b = 13

   i = (i - a) MOD 255
   i = i XOR b
   sMess = CHR$(i)
   PRINT "decoded message is: "; sMess  '("h")

Mirror provided by Knuth Konrad