5.

Learn Encryption Techniques with BASIC and C++
(Publisher: Wordware Publishing, Inc.)
Author(s): Gil Held
ISBN: 1556225989
Publication Date: 10/01/98

Table of Contents


Index

A

alphabet,
cipher, 230
ciphertext, 18, 25
displacement, 27
keyword-based mixed, 95
numeric-based transposition, 142
plaintext, 18, 25
reverse ciphertext, 31
alphabetic relationships, 25-27
alternative, 133
common, 134
alphabetic shift key, 30
combining with keyword-based mixed alphabet, 104
using, 33
authentication, 370-371

B

backslash character, (\), 58
BASIC subroutines, 354-355
Baudot code, 274-275
binary random number sequences, 274

C

C++ language, 19
Caesar cipher, 16, 24
challenge message, 366
checkInput function, 100
cipher alphabet, 230
cipher disk, 222
cipher system, 2-4
cipher systems,
substitution, 15-17
transposition, 15, 17-18
types of, 15-18
cipher,
Caesar, 16, 24
Playfair, 218-219
Vigenere, 223-229
ciphers, 2-4
ciphertext, 6
converting to, 39-47
ciphertext alphabet, 18, 25
cleartext, see plaintext
code positions, 307
code system, 2-4
codes, 2-4
CONVERTSTORE subroutine, 58-60, 354
createAlphabet function, 100
createCipher function, 42, 94
cryptology, 1-2

D

DCONVERTSTORE subroutine, 129-130, 354
decipher function, 94
DECIPHER subroutine, 84, 354
DECIPHER.EXE execution, 364-366
decipherment, 3, 6-8, 32-33
reducing probability of, 232-233
decipherment process, 6-8
decoding, 3
decrypt function, 335
decryptFile function, 335
decryptKeyboardText function, 335
Diffie-Hellman concept, 372-373
digital signature, 370
displacement, 26-27, 31
displacement alphabet, 27
DMSGFILE subroutine, 82-84, 128-129, 264, 354
DO UNTIL loop, 59
DPCONVERTSTORE subroutine, 264-265
DPRTOUT subroutine, 85, 354

E

electronic mail systems, 18-19
ENCIPHER subroutine, 282
ENCIPHER.EXE execution, 362-364
encipherment, 3, 5, 31-32
RSA, 386-387
encipherment process, 5-6
encoding, 3
encryptFile function, 322
encryption systems,
private key based, 10-12
public key based, 10-12
types of, 10
encryptKeyboardText function, 322
errors, limiting, 47
Euclidean algorithm, 382-384
exponentiation, 387-390

F

Fermat’s theorem, 391
formatData function, 94
FORMCIPHER subroutine, 34, 354
formCipheredMessage function, 42
FOR-NEXT statement, 35, 41
frequency analysis, 136, 217, 221

G

getFileToDecipher function, 94
getKeyword function, 100
getMessage function, 42
getShiftKey function, 42, 94
GOSUB statement, 67
greatest common divisor, 382
GROUPBY5 subroutine, 47-48, 354
modified, 63-64

I

INITIALIZE subroutine, 33, 96, 354
modified, 105, 356-358
INPUT statement, 34
INT function, 279
interval extraction, 143-144
interval function, 187
INTERVAL subroutine, 151-152, 354

K

Kerckhoffs method, 234
key, 4, 8-10
distribution, 11, 13-14
generation, 11, 13, 391
management, 12-14
key space, 8-10
keyword phrase, 96
KEYWORD subroutine, 96, 98-99, 354, 358-359
keyword-based mixed alphabet, 95
combining with alphabetic shift key, 104
constructing, 95-96
keyword-based monoalphabetic substitution,
deciphering process, 125-133
enciphering process, 106-125
weaknesses of, 135-136

L

LEN statement, 40
LTRIM$ statement, 58

M

MAGIC, 17
Manhattan Project, 143
matrix-based systems,
automating, 144-216
decipherment of, 211-216
encipherment of, 144-211
matrix-based transposition, 137-144
mnemonic key, 98
modular addition, 375-377
modular arithmetic, 375-380
finding multiplicative inverse in, 380
modular multiplication, 378-380
modular subtraction, 378
modulo arithmetic, 6-8
modulo 9 arithmetic, 376
modulo 26 arithmetic, 291
encipherment/decipherment, 291-292
monoalphabetic substitution, 23
transposition-based, 137-144
monoalphabetic unilateral substitution, 23
MSGDCIPHER subroutine, 354
MSGENCIPHER subroutine, 40-41, 354
MSGFILE subroutine, 57-58, 354
multiple-line messages, processing, 56-57
multiplicative inverses, 380

N

numeric transposition, 141-143
numeric-based transposition alphabet, 142
numericExtraction function, 187

O

Oite, 48
one-time pad, 277-278

P

PA-K2, 48
PCONVERTSTORE subroutine, 237-238
periodic polyalphabetic substitution, 230-233
PFORMCIPHER subroutine, 236-237
modified, 360
plaintext, 3, 5
plaintext alphabet, 18, 25
Playfair cipher, 218-219
pocket cipher, 229
polyalphabetic substitution systems, 221-234
periodic, 230-233
simple, 223-229
weaknesses of, 234
prime numbers, 381
large, 391-392
locating, 391-392
Mersenne primes, 381
Sophie Germain primes, 381
twin primes, 381
PRINTIT subroutine, 224
printResults function, 42
private key based encryption, 10-12
private key encryption, 371
private key generation, RSA, 386
probability of decipherment, reducing, 232-233
probable word attack, 229
program listings
ASCII.CPP, 309-310
CIPHER1.BAS, 33-34
CIPHER1.CPP, 35-39
CIPHER2.BAS, 39-40
CIPHER2.CPP, 42-47
CIPHER3.BAS, 49-50
CIPHER3.CPP, 51-56
CIPHER4.BAS, 64-67
CIPHER4.CPP, 70-81
CIPHER5.BAS (main portion), 105
CIPHER5.CPP, 109-125
CIPHER6.BAS, 184-185
CIPHER6.CPP, 187-211
CIPHERTR.BAS (main portion), 148-149
CIPHERTR.CPP, 161-183
combining random number sequence and three-numeric key, 304
COUNT.CPP, 240-245
DCIPHER4.BAS (main portion), 86
DCIPHER4.CPP, 88-94
DCIPHER5.BAS (main portion), 127-128
DCIPHER5.CPP, 132-133
DCIPHER6.BAS (main portion), 212
DCIPHER6.CPP (decipher function),215-216
DPOLY2.BAS (main portion), 263
DPOLY2.CPP, 267-269
DPOLY2.CPP (decipher and getFileToDecipher functions), 269-271
DRANDOM2.BAS, 292-293
DRANDOM2.CPP, 295-299
DRANDOM3.BAS (main portion), 332
DRANDOM3.CPP, 336-345
ENCIPHER.BAS (main portion), 356
POLY1.BAS, 224-225
POLY1.CPP, 226-228
POLY2.BAS (main portion), 235-236
POLY2.CPP, 246-262
POSITION.BAS, 313
POSITION.CPP, 314-317
random number generator, 301-302
RANDOM1.BAS, 280
RANDOM1.CPP, 283-285
RANDOM2.BAS, 281
RANDOM2.CPP, 286-291
RANDOM3.BAS (statements in main portion), 319
RANDOM3.CPP, 322-331
ROTOR.BAS, 347-348
RTEST.BAS, 318
SHIFT.BAS, 28
SHIFT.CPP, 29-30
TRANSPORT.CPP, 153-161
using ASCII character values, 308
WORD.BAS, 96-97
WORD.CPP, 100-103
PRTOUT subroutine, 35, 60-63, 354
pseudo-random number generator, creating, 305-306
pseudo-random number sequences, 273, 276
generating, 276-279
pseudo-random sequence, 16
public key based encryption, 10-12
public key encryption, 369-370
advantages, 373
disadvantages, 373-374
general operation of, 369-370
public key generation, RSA, 386
PURPLE, 17

Q

QuickBASIC language, 19

R

random number generation, 277-279
alternative process for, 345-351
random number generator, creating, 305
random number sequences, 273
generating, 275
random numbers, 273
extending security of, 301, 303
RANDOMIZE SEED1 statement, 349
RANDOMIZE SEED2 statement, 349
RANDOMIZE statement, 278-279
RCONVERTSTORE subroutine, 319-321, 354
modified, 360-361
RDCONVERTSTORE subroutine, 332-333, 355
REM statement, 98
repetition period, 231
RESTORE statement, 106
reverse ciphertext alphabet, 31
RND function, 276-277
ROTOR subroutine, 350
RSA, 385-387

S

SETUP subroutine, 354, 361-362
simple transposition, 140-141
six-position code, 310-312
slash character (/), 58
subroutines,
CONVERTSTORE, 58-60, 354
DCONVERTSTORE, 129-130, 354
DECIPHER, 84, 354
DMSGFILE, 82-84, 128-129, 264, 354
DPRTOUT, 85, 354
ENCIPHER, 282
FORMCIPHER, 34-35, 354
GROUPBY5, 47-48, 354
GROUPBY5, modified, 63-64
INITIALIZE, 33, 96, 354
INITIALIZE, modified, 105, 356-358
INTERVAL, 151-152, 354
KEYWORD, 96, 98-99, 354, 358-359
MSGDCIPHER, 354
MSGENCIPHER, 40-41, 354
MSGFILE, 57-58, 354
PCONVERTSTORE, 237-238
PFORMCIPHER, 236-237
PFORMCIPHER, modified, 360
PRINTIT, 224
PRTOUT, 35, 60-63, 354
RCONVERTSTORE, 319-321, 354
RCONVERTSTORE, modified, 360-361
RDCONVERTSTORE, 332-333, 355
ROTOR, 350
SETUP, 354, 361-362
SPCONVERTSTORE, 264-265
TABLE, 224
TRANSPORT, 145-148, 354
substitution cipher systems, 15-17
symmetric key system, see private key based encryption

T

TABLE subroutine, 224
totient function, 384-385
TRANSPORT subroutine, 145-148, 354
transposition,
matrix-based, 137-144
simple, 140-141
transposition cipher systems, 15, 17-18
transposition-based monoalphabetic substitution, 137-144

U

unilateral substitution, 23-24
UUDECODE, 18
UUENCODE, 18

V

Vigenére cipher system, 223-229
basic tableau, 223-224
encipherment, 228-229

W

WHILE-WEND loop, 62


Table of Contents


Learn Encryption Techniques with Basic and C++
Learn Encryption Techniques with BASIC and C++
ISBN: 1556225989
EAN: 2147483647
Year: 2005
Pages: 92
Authors: Gil Held

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net