Aperçu
TheInternationalDataEncryptionAlgorithm (IDEA, InternationalDataEncryptionAlgorithm) wasdevelopedbyresearchersXuejiaLaiandJamesL.MasseyatZurich'sETH, ownedbyaSwisscompanyAscomSystecpatent.IDEAisimplementedasaniterativeblockcipher, usinga128-bitkeyand8cycles.Bypayingroyalties (usuallyabout 6.00percopy $), IDEAcanbewidelyusedallovertheworld.Thesefeesareapplicableinsomeregions, butnotinotherregions.IDEAisconsideredextremelysafe.Witha128-bitkey, thenumberoftestsrequiredinabruteforceattackwillincreasesignificantlycomparedwithDES, andevenweakkeytestingisallowed.Moreover, italsoshowsthatitisparticularlyresistanttoprofessionalformsofanalyticalattacks.
Caractéristiques de l'algorithme IDEA
Semblable à DES, l'algorithme IDEA est également un algorithme de chiffrement de bloc de données. Il a été conçu comme une série de cycles de chiffrement, et chaque cycle de chiffrement utilise une clé de chiffrement complète.
SinceIDEAwasproposedanddevelopedoutsidetheUnitedStates, itavoidsmanyrestrictionsonencryptiontechnologyintheUnitedStates.Therefore, booksaboutIDEAalgorithmsandimplementationtechnologiescanbefreelypublishedandexchanged.ItcangreatlypromotethedevelopmentandperfectionofIDEA.Butbecausethealgorithmhasn'tappearedforalongtime, therearenotmanyattacksagainstit, andithasnotpassedthetestofalongtime.Therefore, itsadvantagesanddisadvantagescannotbejudgedyet.
Introduction aux algorithmes
Introduction à l'algorithme de chiffrement IDEA
IDEA (International Data Encryption Algorithm) appartient à la catégorie de chiffrement par bloc en cryptographie. IDEA utilise une clé d'une longueur de 128 bits et une taille de bloc de données de 64 bits.
Asearlyas1990, XuejiaLaiandothersputforwardtheblockcipherproposalPES (ProposedEncryptionStandard) attheEuroCrypt'90annualmeeting.AttheEuroCrypt'91annualmeeting, XuejiaLaiandothersproposedarevisedversionofPES (ImprovedPES) .CurrentlyIPEShasbeencommercializedandrenamedIDEA.IDEAhasbeenpatentedbytheSwisscompanyAscom, andthecompanymustapplyforalicensetousetheIDEAalgorithmforcommercialpurposes.
IDEA est un algorithme itératif composé de 8 cercles similaires (Round) et d'une transformation de sortie (OutputTransformation).
Beforeencryption, IDEAexpandsthe128-bitkeyto52encryptionkeysEK (EncryptionKey) throughKeyExpansion, andthencalculatesthedecryptionkeyDK (decryptionKey) byEK) .EKandDKaredividedinto8groupsofhalfkeys, eachgroupis6bytesinlength, thefirst8groupsofkeysareusedfor8-roundencryption, andthelasthalfgroupofkeys (4 octets) isusedforoutputtransformation.IDEA'sencryptionprocessanddecryptionprocessarethesame, butusedifferentkeys (EKforencryptionandDKfordecryption).
Le processus d'extension de clé est le suivant :
1.Utilisez la clé de 128 bits comme les huit premières sous-clés de EK ;
2.Déplacezlepremier8octetverslagauchede25bitspourobtenirlessixsous-cléssuivantesetbouclezceprocessus7fois;
3.Dansle7ecycle,prenezles4premiersoctetscommeles4derniersbitsdeEK;
4. Jusqu'à présent, les 52 octets EK ont été générés.
Le processus d'extension de clé est illustré dans le tableau 1. Afin de voir clairement la relation entre chaque 8 octets, chaque 8 octets est divisé par des lignes épaisses dans le tableau 1.
IDEAalgorithmisarelativelynewalgorithm, anditssecurityresearchisalsoongoing.SoonaftertheIDEAalgorithmwasannounced, somescholarspointedout: IDEA'skeyexpansionalgorithmisflawed, resultinginalargenumberofweakkeyclassesintheIDEAalgorithm, butthisweaknessisachievedbysimplymodifyingthekeyexpansionalgorithm (addinganexclusiveORoperator)) Canbeovercome.Atthe1997EuroCrypt'97annualmeeting, JohnBorstandothersproposedtwoattackalgorithmsforIDEAwithreducedlaps: TruncateDiffrentialAttackon3.5-circleIDEAanddifferentialattackon3-circleIDEA.DiffrentialLinearAttack.Buttheauthoralsopointedoutatthesametimethatthesetwoattackalgorithmsareunlikelytoachieveasubstantialattackeffectontheentire8.5circleofIDEAalgorithm.Nonewattackalgorithmhasappearedyet.Itisgenerallybelievedthattheonlyeffectivewaytoattacktheentire8.5circleofIDEAalgorithmistosearchthe128-bitkeyspaceexhaustively.
Exemples d'application
AtPresent, IDEAhasalargenumberofapplicationexamplesintheproject.PGP (PrettyGoodPrivacy) usesIDEAasitspacketencryptionalgorithm; SecureSocketLayerSSL (SecureSocketLayer) alsoincludesIDEAinitsencryptionalgorithmlibrarySSLRef; Ascom, theowneroftheIDEAalgorithmpatent, hasalsolaunchedaseriesofsecurityproductsbasedontheIDEAalgorithm, dont: IDEA-basedExchangesecurityplug-ins, IDEAencryptionchips, IDEAencryptionSoftwarepackages, etc.TheapplicationandresearchofIDEAalgorithmisbecomingmoreandmoremature.