The twofish encryption algorithm: a 128-bit block cipher
Gespeichert in:
Format: | Buch |
---|---|
Sprache: | English |
Veröffentlicht: |
New York u.a.
Wiley
1999
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XI, 186 S. |
ISBN: | 0471353817 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV012821396 | ||
003 | DE-604 | ||
005 | 00000000000000.0 | ||
007 | t | ||
008 | 991021s1999 |||| 00||| engod | ||
020 | |a 0471353817 |9 0-471-35381-7 | ||
035 | |a (OCoLC)40861995 | ||
035 | |a (DE-599)BVBBV012821396 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
049 | |a DE-91G |a DE-522 | ||
050 | 0 | |a QA76.9.A25 | |
082 | 0 | |a 005.8/2 |2 21 | |
245 | 1 | 0 | |a The twofish encryption algorithm |b a 128-bit block cipher |c Bruce Schneier ... |
264 | 1 | |a New York u.a. |b Wiley |c 1999 | |
300 | |a XI, 186 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 4 | |a Computer security |x Passwords | |
650 | 4 | |a Data encryption (Computer science) | |
650 | 0 | 7 | |a Kryptologie |0 (DE-588)4033329-2 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Kryptologie |0 (DE-588)4033329-2 |D s |
689 | 0 | |5 DE-604 | |
700 | 1 | |a Schneier, Bruce |d 1963- |e Sonstige |0 (DE-588)123003180 |4 oth | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=008722028&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-008722028 |
Datensatz im Suchindex
_version_ | 1804127496608677888 |
---|---|
adam_text | Table of Contents
Preface iii
AES iii
This Book v
1. Introduction 1
2. Twofish Design Goals 3
3. Twofish Building Blocks 5
3.1 Feistel Networks 5
3.2 Whitening 5
3.3 S boxes 6
3.4 MDS Matrices 6
3.5 Pseudo Hadamard Transforms 7
3.6 Key Schedule 7
4. Twofish 9
4.1 The Function F 11
4.2 The Function g 11
4.3 The Key Schedule 12
4.3.1 Additional Key Lengths 13
4.3.2 The Function h 14
4.3.3 The Key dependent S boxes 16
4.3.4 The Expanded Key Words Kj 16
4.3.5 The Permutations qo and qi 16
4.4 Round Function Overview 17
5. Performance of Twofish 19
5.1 Performance on Large Microprocessors 19
5.1.1 Keying Options 21
5.1.2 Code and Data Size 22
5.1.3 Large Memory Implementations 22
5.1.4 Total Encryption Times 23
5.1.5 Hash Function Performance 23
viii Table of Contents
5.1.6 Language, Compiler, and Processor Choice 24
5.2 Performance on Smart Cards 26
5.2.1 RAM Usage 27
5.2.2 Encryption Speed and Key Agility 28
5.2.3 Code Size 29
5.3 Performance on the Alpha 29
5.4 Performance on Future Microprocessors 29
5.5 Hardware Performance 30
6. Twoflsh Design Philosophy 33
6.1 Performance Driven Design 33
6.1.1 Performance driven Tradeoffs 34
6.2 Conservative Design 35
6.3 Simple Design 36
6.3.1 Reusing Primitives 37
6.3.2 Reversibility 37
6.4 S boxes 38
6.4.1 Large S boxes 38
6.4.2 Algorithmic S boxes 39
6.4.3 Key dependent S boxes 39
6.5 The Key Schedule 40
6.5.1 Performance Issues 42
7. The Design of Twoflsh 43
7.1 The Round Structure 43
7.1.1 Common Block Cipher Structures 44
7.2 The Key dependent S boxes 47
7.2.1 The Fixed Permutations q0 and q 48
7.2.2 The S boxes 49
7.2.3 Exhaustive and Statistical Analysis 50
7.3 MDS Matrix 54
7.3.1 Non key dependent Coefficients 54
7.3.2 Implementation Issues 54
7.3.3 Preserving Diffusion Properties after Rotation 54
7.3.4 Rotational Uniqueness of Output Vectors 56
7.3.5 Maximizing the Minimal Hamming Distance 56
7.4 PHT 57
7.4.1 Eliminating the PHT 57
7.4.2 Diffusion and the Least Significant Bit 57
7.5 Key Addition 58
7.6 Feistel Combining Operation 58
7.7 Use of Different Groups 58
7.8 Diffusion in the Round Function 59
7.8.1 Changes Induced by F 59
7.9 One bit Rotation 59
Table of Contents ix
7.9.1 Reason for Rotations 60
7.9.2 Downsides to Rotations 60
7.9.3 Converting to a Pure Feistel Structure 60
7.10 The Number of Rounds 61
8. Design of the Twoflsh Key Schedule 63
8.1 Round Subkeys 64
8.1.1 Equivalence of Round Subkeys 64
8.1.2 Equivalent keys 65
8.2 Controlling Changes in Round Subkeys 67
8.2.1 XOR Difference Sequences in A and B 68
8.2.2 Byte Sequences with Given Difference 68
8.2.3 Identical Byte Sequences 69
8.2.4 The A and B Sequences 70
8.2.5 The Sequence (K2i, K2i+i) 70
8.2.6 Difference Sequences in the Subkeys 71
8.3 The Round Function 72
8.4 Properties of the Key Schedule and Cipher 74
8.4.1 Equivalent Keys 74
8.4.2 Self Inverse Keys 74
8.4.3 Pairs of Inverse Keys 74
8.4.4 Simple Relations 75
8.5 Key dependent Characteristics and Weak Keys 75
8.6 Reed Solomon Code 76
9. Cryptanalysis of Twofish 79
9.1 A Meet in the Middle Attack on Twofish 80
9.1.1 Results of the Attack 80
9.1.2 Overview of the Attack 80
9.1.3 Attacking Twofish with Fixed S and no Whitening ... 81
9.1.4 Attacking Twofish with Fixed S 81
9.1.5 Attacking Normal Twofish 81
9.2 Differential Cryptanalysis 82
9.2.1 Results of the Attack 82
9.2.2 Overview of the Attack 82
9.2.3 Building the Batches 84
9.2.4 Mounting the Attack 87
9.2.5 Lessons from the Analysis 89
9.3 Extensions to Differential Cryptanalysis 90
9.3.1 Higher Order Differential Cryptanalysis 90
9.3.2 Truncated Differentials 90
9.4 Search for the Best Differential Characteristic 90
9.4.1 Differentials of the S boxes 91
9.4.2 Differentials of F 92
9.4.3 Differentials of the Round Function 96
x Table of Contents
9.4.4 Multi round Patterns 96
9.4.5 Results 97
9.4.6 Other Problems for the Attacker 97
9.4.7 Best S box Differential 98
9.4.8 Other Variants 99
9.4.9 Further Work 99
9.4.10 Conclusion 100
9.5 Linear Cryptanalysis 101
9.5.1 Multiple Linear Approximations 102
9.5.2 Non linear Cryptanalysis 102
9.5.3 Generalized Linear Cryptanalysis 102
9.5.4 Partitioning Cryptanalysis 102
9.5.5 Differential linear Cryptanalysis 103
9.6 Interpolation Attack 103
9.7 Partial Key Guessing Attacks 104
9.8 Related key Cryptanalysis 104
9.8.1 Resistance to Related key Slide Attacks 104
9.8.2 Resistance to Related key Differential Attacks 105
9.8.3 The Zero Difference Case 106
9.8.4 Other Difference Sequences 107
9.8.5 Probability of a Successful Attack with One Related
key Query 107
9.8.6 Conclusions 108
9.9 A Chosen key Attack 108
9.9.1 Overview of the Attack 109
9.9.2 Finding a Key Pair 109
9.9.3 Choosing the Plaintexts to Request 110
9.9.4 Extracting the Key Material 110
9.10 Side Channel Cryptanalysis and Fault Analysis Ill
9.11 Attacking Simplified Twofish 112
9.11.1 Twofish with Known S boxes 112
9.11.2 Twofish without Round Subkeys 112
9.11.3 Twofish with Non bijective S boxes 114
9.12 Trap Doors in Twofish 115
10. Using Twofish 119
10.1 Chaining Modes 119
10.2 One Way Hash Functions 119
10.3 Message Authentication Codes 120
10.4 Pseudorandom Number Generators 120
10.5 Larger Keys 120
10.6 Additional Block Sizes 120
10.7 More or Fewer Rounds 120
10.8 Family Key Variant: Twofish FK 122
10 8.1 Analysis 123
Table of Contents xi
11. Historical Remarks 125
12. Conclusions and Further Work 129
References 131
A. Overview of Symbols 143
B. Twofish Test Vectors 147
B.I Intermediate Values 147
B.2 Full Encryptions 152
C. Code 157
C.I C Code 157
Index 183
|
any_adam_object | 1 |
author_GND | (DE-588)123003180 |
building | Verbundindex |
bvnumber | BV012821396 |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.9.A25 |
callnumber-search | QA76.9.A25 |
callnumber-sort | QA 276.9 A25 |
callnumber-subject | QA - Mathematics |
ctrlnum | (OCoLC)40861995 (DE-599)BVBBV012821396 |
dewey-full | 005.8/2 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.8/2 |
dewey-search | 005.8/2 |
dewey-sort | 15.8 12 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01280nam a2200349 c 4500</leader><controlfield tag="001">BV012821396</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">00000000000000.0</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">991021s1999 |||| 00||| engod</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0471353817</subfield><subfield code="9">0-471-35381-7</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)40861995</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV012821396</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-91G</subfield><subfield code="a">DE-522</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA76.9.A25</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.8/2</subfield><subfield code="2">21</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">The twofish encryption algorithm</subfield><subfield code="b">a 128-bit block cipher</subfield><subfield code="c">Bruce Schneier ...</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">New York u.a.</subfield><subfield code="b">Wiley</subfield><subfield code="c">1999</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XI, 186 S.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Computer security</subfield><subfield code="x">Passwords</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Data encryption (Computer science)</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Kryptologie</subfield><subfield code="0">(DE-588)4033329-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Kryptologie</subfield><subfield code="0">(DE-588)4033329-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Schneier, Bruce</subfield><subfield code="d">1963-</subfield><subfield code="e">Sonstige</subfield><subfield code="0">(DE-588)123003180</subfield><subfield code="4">oth</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=008722028&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-008722028</subfield></datafield></record></collection> |
id | DE-604.BV012821396 |
illustrated | Not Illustrated |
indexdate | 2024-07-09T18:34:16Z |
institution | BVB |
isbn | 0471353817 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-008722028 |
oclc_num | 40861995 |
open_access_boolean | |
owner | DE-91G DE-BY-TUM DE-522 |
owner_facet | DE-91G DE-BY-TUM DE-522 |
physical | XI, 186 S. |
publishDate | 1999 |
publishDateSearch | 1999 |
publishDateSort | 1999 |
publisher | Wiley |
record_format | marc |
spelling | The twofish encryption algorithm a 128-bit block cipher Bruce Schneier ... New York u.a. Wiley 1999 XI, 186 S. txt rdacontent n rdamedia nc rdacarrier Computer security Passwords Data encryption (Computer science) Kryptologie (DE-588)4033329-2 gnd rswk-swf Kryptologie (DE-588)4033329-2 s DE-604 Schneier, Bruce 1963- Sonstige (DE-588)123003180 oth HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=008722028&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | The twofish encryption algorithm a 128-bit block cipher Computer security Passwords Data encryption (Computer science) Kryptologie (DE-588)4033329-2 gnd |
subject_GND | (DE-588)4033329-2 |
title | The twofish encryption algorithm a 128-bit block cipher |
title_auth | The twofish encryption algorithm a 128-bit block cipher |
title_exact_search | The twofish encryption algorithm a 128-bit block cipher |
title_full | The twofish encryption algorithm a 128-bit block cipher Bruce Schneier ... |
title_fullStr | The twofish encryption algorithm a 128-bit block cipher Bruce Schneier ... |
title_full_unstemmed | The twofish encryption algorithm a 128-bit block cipher Bruce Schneier ... |
title_short | The twofish encryption algorithm |
title_sort | the twofish encryption algorithm a 128 bit block cipher |
title_sub | a 128-bit block cipher |
topic | Computer security Passwords Data encryption (Computer science) Kryptologie (DE-588)4033329-2 gnd |
topic_facet | Computer security Passwords Data encryption (Computer science) Kryptologie |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=008722028&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT schneierbruce thetwofishencryptionalgorithma128bitblockcipher |