07.07.2023 Views

Implementing-cryptography-using-python

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Index ■ Q–S 283

Preneel, Bart, 145

prime factorization, 97

prime number theorem, 98

prime numbers

Fermat’s little theorem, 100

generating large ones, 104–106

Miller-Rabin primality test, 100–104

overview, 97–98

prime number theorem, 98

school primality test, 98–99

Print() function, 13

privacy enhanced electronic mail (PEM),

70–71

protocols

cryptographic protocols, 32–33, 46–47

Kerberos protocol, 36, 39–40

multiple-domain Kerberos, 40–41

Needham-Schroeder protocols, 36–38

Network Time Protocol (NTP), 42

Otway-Rees protocol, 38

public-key protocol, 36–37

symmetric key protocol, 36

Transmission Control Protocol (TCP), 212

User Datagram Protocol (UDP), 212

pseudorandom number generation (PRNG),

115, 141–144

pseudorandomness

breaking C’s rand() function, 116

overview, 115

public key MAC encryption, for

incorporating message hashing, 200–201

public-key certificates, 42

public-key infrastructure (PKI)

described, 223–224

implementing of in application using RSA

certificates, 255–261

public-key protocol

as second protocol of Needham-Schroeder

protocols, 36–37

as similar to protocol proposed by Otway

and Rees, 38

public-key transformation

constructing BLOB encryption and

decryption with, 232–235

constructing simple text decryption with

RSA certificates, 231–232

exploring basics of RSA, 226–229

generating RSA certificates, 229–230

overview, 224–226

PyFITS, described, 3

Python

basics of, 9–29

downloading and installing, 3–8

installing additional packages, 5

installing Cryptography package, 7–8

reasons to use, 2–3

upgrading packages, 5

using AES with, 167–169

Python 2, as unsupported, 3

Q

quotes

double quote ("), 11

single quote (’), 11

R

R file operator, 19

r+ file operator, 19

R A (notation in cryptographic protocols), 37

Rabin, Michael, 100

rainbow table, 67

RC4, 147

reflection attack, 211

relational operators, 13

remove() method, 25

reordering attack, 211

replay attack, 211

requests module, 27

reserved words, 9

reverse cipher, creating, 29

reverse() method, 25

reverseCipher function, 29

Rivest, Ron, 34, 226

ROT-13, 76

RSA algorithm, 104, 226–235, 242

RSA certificates

constructing BLOB encryption and

decryption with, 232–235

constructing simple text encryption and

decryption with, 231–232

generating, 229–231

implementing PKI in application using,

255–261

RSAES-OAEP, 231

S

Salsa20 cipher, 149–151

Schneier, Bruce, 162

school primality test, 98

Schroeder, Michael, 36

SEC (Standards of Efficient Cryptography), 241

secondary resistance, 59

secret sharing, 33

secret splitting, 33

Secure Hash Algorithms (SHAs), 203–204,

205, 209

securing elections, 33

security protocols, as another name for

cryptographic protocols, 32

Segmented Integer Counter mode, 162–164

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!