SE464991B - Krypteringskrets uppbyggd med grindmatristeknik - Google Patents

Krypteringskrets uppbyggd med grindmatristeknik

Info

Publication number
SE464991B
SE464991B SE8902165A SE8902165A SE464991B SE 464991 B SE464991 B SE 464991B SE 8902165 A SE8902165 A SE 8902165A SE 8902165 A SE8902165 A SE 8902165A SE 464991 B SE464991 B SE 464991B
Authority
SE
Sweden
Prior art keywords
encryption
circuit
memory
bits
data
Prior art date
Application number
SE8902165A
Other languages
English (en)
Other versions
SE8902165L (sv
SE8902165D0 (sv
Inventor
S Ohlsson
Original Assignee
Televerket
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Televerket filed Critical Televerket
Priority to SE8902165A priority Critical patent/SE464991B/sv
Publication of SE8902165D0 publication Critical patent/SE8902165D0/sv
Priority to DE1990622780 priority patent/DE69022780T2/de
Priority to EP19900850188 priority patent/EP0403456B1/en
Publication of SE8902165L publication Critical patent/SE8902165L/sv
Publication of SE464991B publication Critical patent/SE464991B/sv

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Description

15 20 25 30 35 40 464 991 z SAMMANFATTNING AV UPPFINNINGEN Uppfinningen tillhandahåller således en krypteringskrets uppbyggd med grindmatristeknik, vilken krets är integrerad på ett chips och kretsens benkonfiguration överensstämmer med benkonfigurationen hos en minneskrets, företrädesvis ett statiskt minne av standardtyp (RAM).
Ytterligare särdrag hos uppfinningen anges i de efterföljande patent- kraven.
KÛRTFATTAD BESKRIVNING AV RITNINGARNA Uppfinningen kommer nu att beskrivas med hänvisning till bifogade ritningar.
Fig. 1 visar schematiskt ett datorsystem med inbyggd kryptokrets.
Fig. 2 visar ett exempel på en standardminneskrets och dess benkonfigu- ration.
Fig. 3 visar ett förenklat schema för ECB-kryptering blockvis.
Fig.
DES-algoritmen i ECB-mod.
Fig. 5 är ett flödesschema för genereringen av funktionen f. 4 är ett flödesschema över dataflödet vid kryptering med Fig. 6 är ett flödesschema över subnyckelgenereringen.
Fig. 7 är ett schema för bitcirkulation vid subnyckelgenerering.
Fig. 8 är ett komprimerat flödesschema för dataflödet vid registret, motsvarande fig. 4.
Fig. 9 är ett blockschema över hela kryptokretsen, såsom den ter sig för det övriga datorsystemet.
Fig. 10 är en minneskarta över kryptokretsen.
DETALJERAD BESKRIVNING AV UPPFINNINGENS UTFÜRINGSFURMER Uppfinningen tillhandahåller en krypteringskrets i grindmatristeknik.
Den skall kunna utföra kryptering och dekryptering enligt DES-standarden i den s.k. ECB-moden. Krypteringsalgoritmen beskrives mera detaljerat nedan.
Ett huvudsyfte med uppfinningen är att krypteringskretsen skall vara utbytbar mot ett 8 kbyte statiskt minne av standardtyp, såsom Toshiba 5564 eller motsvarande krets. Det är en minneskrets som används flitigt i elektronik- utrustningar. Andra beteckningar är t.ex. 2064, 6264, 4364 och 8264.
Att kryptokretsen skall vara utbytbar innebär att den elektriska inkopplingen överensstämmer med minneskretsens specifikation. Benarrange- manget skall överensstämma och reaktionerna vid läsning och skrivning skall ske likvärdigt. Kryptokretsen skall realiseras så att det ursprungliga 8 kbytes-blocket bibehålles i största möjliga utsträckning. Ünskemålet med ett internt minne kan vara svårt att uppfylla i samma krets. I så fall skall 10 15 20 25 30 35 40 3 464 991 avkodningslogik läggas in för ett framtida sådant minne, internt eller externt. Kretsen skall alltså generera signalen CS, Chip Select, som då kan användas av en intern RAM. Dessutom skall CS dras till ben 1 på kryptokretsen för en eventuell "piggy-back"-koppling. En minneskrets lödes alltså ovanpå eller under kryptokretsen och tar denna CS-signal från ben 1. Ben 1 används ej av minneskretsen och blir alltså en utgång för kryptokretsen. I många tillämpningar spelar förlusten av en minneskrets ingen större roll.
Krypteringsdelen skall belägga ett lämpligt antal minnesceller från högsta adress och nedåt.
Ett tänkt datorsystem med kryptering skulle kunna vara ett ordinärt system som varit i drift sedan länge. Genom att byta ut en minneskrets mot en krypteringskrets ger man systemet möjlighet att kommunicera med krypterat data. En typisk tillämpning är kommunikation mellan datorer. Fig. 1 visar ett sådant system där minnes- och CPU-block och kommunikationsblock kan ses. I operativsystemet eller tillämpningsprogrammen måste rutiner för dataflödet naturligtvis modifieras. Det ordinarie dataflödet, till kommunikations- kretsar, styrs då om så att data får ta vägen via kryptokretsen. Att utföra krypteringen med hjälp av programvara skulle säkerligen göra det program- avsnittet till en flaskhals som bromsar upp dataflödet. En hårdvarukrets utför däremot krypteringen extremt snabbt med följd att datorhastigheten ej nämnvärt bromsas.
Kretsen skall alltså bli utbytbar mot ett statiskt RAM-minne. I fig. 2 visas ett exempel på en sådan krets, Toshiba 5564. Minnet som är på 8 kbyte och har 28 stycken ben, är mycket vanligt i system.
Innan vi går in på kretsens konstruktion måste krypteringsalgoritmen beskrivas. DES (Data Encryption Standard) utvecklades alltså av IBM på 70-talet och har sedermera blivit standard i USA hos de federala myndig- heterna. DES har också förutsättningar att bli använd inom den privata sektorn, främst inom bankvärlden, och förväntas få en internationell spridning.
Algoritmen är avsedd att realiseras i hårdvara. Kryptering och dekrypte- ring utförs lika lätt med en smärre omkastning i logiken. Enligt standarden finns det fyra olika sätt att kryptera/dekryptera: ECB Electronik Code Book, CBS Cipher Block Chaining, CFB Cipher Feedback och ÛFB Output Feedback. Den första grundläggande varianten kallas ECB. Där utförs själva (de)krypte- ringen. De andra varianterna kräver ECB i grunden. CBC, CFB och 0FB använder sig alla av ECB plus extra logik såsom EXÛR-grindar och skiftregister för att uppnå sina specifika egenskaper. På marknaden finns ett flertal kretsar med DES-algoritmen, t.ex. Motorola MC6859, Zilog Z8068 etc. Den häri beskrivna utföringsformen av uppfinningen innehåller endast den grundläggande ECB men 10 15 20 25 30 35 40 464 991 4 en fackman kan naturligtvis även konstruera de andra varianterna.
ECB krypterar blockvis 64 bitar data med en nyckel på 64 bitar. I fig. 3 visas schematiskt hur krypteringen sker. Ett block m av klartext krypteras med hjälp av en nyckel. Eftersom själva krypteringsalgoritmen är välkänd är det bara nyckeln som skall hållas hemlig av användaren. Nyckeln består också av 64 bitar men har 8 paritetsbitar som inte ingår i algoritmen. 56 bitar blir då kvar till nyckeln. Resultatet av krypteringen är ett krypterat block om 64 bitar. Dekrypteringen följer samma princip som krypteringen genom att en omkastning av s.k. subnycklar görs. Subnycklarna beräknas med hjälp av nyckeln. ECB är i princip en översättningstabell för ett dataord om 64 bitar och en nyckel på 56 bitar.
I fig. 4 visas ett flödesschema för dataflödet vid krypteringen. Ett klartextblock T (64 bitar) utsätts först för en fast permutation IP. Där korskopplas alla bitar enligt ett fast mönster med hjälp av tabeller.
Resultatet, fortfarande 64 bitar, delas därefter upp i ett 32 bitars vänsterblock L-noll och ett högerblock R-noll. Därefter följer 16 likadana steg. Vänster och höger block numreras löpande från noll (startblock) till 16 med index i. Varje block får nytt värde enligt: Li : Ri_1 Ri Li-1 G) f G) = exorfunktion 32 bitar Som synes erhåller vänsterblocket tidigare värde från högerblocket.
Högerblocket får nya värden genom exorfunktionen på vänsterblocket och en funktion f. Funktionen f utförs med högerblock och ett subnyckelvärde Kí som insignaler. Subnycklarna Ki beskrivs senare.
Allt sker 16 gånger med ny subnyckel varje gång. Blocken R16 och L16 slås samman genom hoplänkning till ett 64 bitars ord. Blocken har dock kastats om men genereringen av dem följer fortfarande uttrycken ovan.
Slutligen sker en permutation lP_1 som är inversen av den första, IP. Den är nödvändig för att algoritmen både skall kunna kryptera och dekryptera.
Värdet efter IP'1 är kryptotexten och innehåller 64 bitar.
I fig. 5 visas hur funktionen f beräknas. Det finns två ingångar och en utgång. Bussarna Rí_1 om 32 bitar och Kí om 48 bitar är insignaler. f (Ri_1, Ki) om 32 bitar är utsignal. Först sker en expansion E av 32 bitars R-värde till ett 48 bitars ord genom att 16 av de 32 bitarna i R dubbleras efter ett visst mönster med hjälp av tabellslagning. Därefter adderas resultatet, med exorfunktion, från expansionen bit för bit med en 48 bitars subnyckel K. Härigenom erhålls 8 stycken 6 bitars adresser till lika många tabeller, S1 till 58. Varje tabell har flera bitars utgång och 6 bitars adressingång. Tabellerna är benämnda S-boxar och där hittas värden om 4 bitar (0-15). 5-boxarna är helt enkelt fixa minnen. Ut från varje box 10 15 20 25 30 35 40 s 464- 991 fås alltså 4 bitar som med 8 S-boxar och hoplänkning ger ett 32 bitars ord.
Ordet utsätts för en fix permutation P genom tabellslagning. Resultatet blir ett 32 bitars ord som utgör f (Ri_1, Ki).
Genereringen av de 16 subnycklarna framgår av fig. 6. Den ursprungliga nyckeln K på 64 bitar utsätts för en fix permutation PC-1 (permuted choice 1) med hjälp av en tabell. Där plockas paritetsbitarna bort och resterande 56 bitar kastas om. Paritetsbitarna utgör var 8:e bit i det ursprungliga 64 bitars ordet. De 56 bitarna delas vidare upp i två halvor om 28 bitar C D . Subnycklar K Û' Û 1 vänsterrotering av C och D, såsom framgår ur fíg. 7. Antalet skift, till K16 skall skapas och detta sker med roteringar som skall utföras bestämmes med en tabell. Efter att K16 har skiftats fram (28 stycken skift) kommer det ursprungliga värdet, efter PC-1, att genereras. Varje resultat av skiften i C och D hoplänkas och utsätts för en fix permutation i PC-2. Eftersom antalet bitar är 2 gånger 28 = 56 i C, D och Ki skall bestå av 48 bitar måste vissa bitar förkastas i PC-2. Alla bitar i C, D kommer dock att användas någon gång av PC-2 på grund av rotationen.
Vid dekrypteringen används samma algoritm förutom att i stället för att använda subnycklarna K1-K16 i nämnd ordning kastas dessa om till 16-K1. Då uppstår dock problem vid genereringen av subnycklarna. Tiden att först ta fram K16 och sedan K15 osv. blir mycket stor om enbart vänsterskift utföres. Hela skifttabellen skall ju utföras ordningen K uppifrån och ned. Genom att införa högerskift med start nedifrån bl tidsåtgången lika för kryptering och dekryptering. Skiftkolumnen ma dock lyftas ett steg uppåt. Subnyckel K16 erhålls då utan något skift och K1 efter 27 stycken högerskift.
Enligt uppfinningen sker emellertid realiseringen i hårdvara och då används inga skift alls. Detta sker helt kombinatoriskt utan inblandning av skiftregister, såsom kommer att beskrivas nedan.
I det följande beskrivs hur uppfinningen realiserar utförandet av krypteringsalgoritmen i grindmatristeknik. Själva algoritmen består av 16 steg där nytt data genereras mellan varje steg. Allt sker med 64 bitars bredd och kretsåtgången skulle bli mycket hög vid en direkt kopiering av algoritmen. Enligt uppfinningen används därför endast ett register som laddas 17 gånger: en gång för inkommande block om 64 bitar och 16 gånger för omvandlingen. l fig. 8 visas schematiskt hur dataströmmarna organiseras mellan registret L,R, funktionen f och en multiplexer MUX. Eftersom alla vippor i en grindmatris klockas kontinuerligt måste logik återkoppla vippornas utsignaler till ingångarna då dessa ej skall ändra tillstånd.
Multiplexern före registren har då tre olika signaler att välja på: data in, 10 15 20 25 30 35 40 464 991 6 algoritmens nya data från funktionen f och registrets tidigare data. Den tillgängliga databussen från omvärlden är på 8 bitar. lnladdningen och läsningen av data måste följaktligen ske i 8 steg (8 x 8 = 64). MUX-blocket blir relativt omfattande.
Enligt algoritmen skall alltså en 56 bitars nyckel lagras i ett register och utsättas för ett antal skift med olika längd inför varje moment i krypteringen. Enligt uppfinningen åstadkommas detta med ett kombinatoriskt block för att undvika att bromsa ned förloppet med en extra styrenhet. Med ett nät av 768 transmissionsgrindar plus styrlogik kan rätt bit föras till den rätta utgången, vilka då ersätter LS-blocken i fig. 6.
Den största delen av blocket utgöres av de s.k. s-boxarna. Det är 8 stycken minnesenheter med sex ingångar och fyra utgångar på varje box. Dessa är uppbyggda diskret med hjälp av grindar och fungerar som fasta minnen med givet utdata för varje adress.
I fig. 9 visas hur krypteringskretsen ter sig för datorsystemet.
Insignaler är en trettonbitars adressbuss, Chip Enable (CE), läs/skriv (R/W) och utgångsaktivering (DE). Data ut- och inmatas på en åttabitars databuss.
RAM-blocket lyssnar på alla tretton bitarna medan kryptoblocket endast använder fem bitar. En avkodare (avk.) lägger ut rätt CE-signal till rätt block beroende av adressen. ÛE styr utgångsbufferten (tretillståndsmulti- plexorn), som är dubbelriktad för dataskrivning.
Kryptokretsen ter sig för en programmerare som en minneskrets med 32 stycken minnespositioner om vardera 8 bitar, med andra ord en byte. Opera- tionerna som kan göras är: inskrivning av data- respektive nyckelblock, start av kryptering eller dekryptering, läsning av status och läsning av krypterat data. Data-, krypto- och nyckelblocket är samtliga på 64 bitar vardera.
Eftersom kretsens databuss är 8 bitar bred måste blocken skrivas och läsas i 8 delblock. Databussen används för blocken och status men start och valet av kryptering/dekryptering styrs genom att skriva med vissa adressbitar 1 eller Û-ställda. Databussens värde har då ingen betydelse. Funktionerna bestämmas av adressbitarna A0 till A4.
A4: Û = dt (data och nyckel) 1 = cnt (kontrollmod) A3 0 = reg (dataregister) 1 = key (nyckelregister) A2_Ü Adresser D-7. MSB (mest signifikanta byte) för data eller nyckelblock placeras i A2_Ü : ÛÛÛ och LSB i 111.
Då A4 = Û representerar A2-AU de 8 adresserna för delblocken i data- eller nyckelblocket. A3 har då funktionen som registerval.
Nyckeln kan skrivas in men ej läsas ut. Då run aktiverats kan (de)krypterat data läsas ut efter att läsning av status har skett. 10 15 ZÛ 25 30 35 40 7 454 991 Då A = 1 kontrollmod kan kommandot start ges och läsning av status göras. 4 Vid skrivning gäller detta.
A4: 1 : cnt (kontroll) A3: x = ingen funktion A2: x = ingen funktion A1: 1 = run 0 : ej run AD: 1 = kryptera = dekryptera Vid statusläsning gäller detta.
Databuss A4: 1 = cnt (kontroll) A3: x : ingen funktion A2: x = ingen funktion A1: x = ingen funktion D1 : 1:kryptering DD = Ûzdekrypt AU: X : ingen funktion DO = 1:running DO = Uzomvandling klar Statusläsning ger på DO svar om (de)krypteringen är klar.
DU = 1:running (ej klar) DO = Ûzklar D1 visar vilken mod kretsen står i D1 : 1:kryptering D1 = Üzdekryptering Alternativt kan allt ses som ett minnespaket med adressval som funk- tionsstyrning. Tabellen i Fig. 10 visar alla möjliga läsningar och skrivningar kretsen kan utsättas för. Som synes är det många redundanta register i minnesmappen. Adresser av intresse är de som har markerats med fet stil. Funktionerna inom parentes är dubletter.
EXEMPEL I praktiken kan en programslinga använda registren på detta sätt: (Ett block krypteras och dekrypteras, ej så realistiskt) Skriv in nyckeln på adress $Û-7 Skriv in datablocket på adress $8-F Skriv på adress $13, : start av kryptering, databussen utan funktion Läs status adress $1Û tills DÛ = Û Läs kryptoblocket på adress $8-F Skriv in kryptoblocket, $8-F (i detta fall ej nödvändigt) Skriv på adress $1Û, = start av dekryptering, databussen utan \IO\U'IJ>\NI\'I-> funktion 8. Läs status 9. Läs det dekrypterade datablocket $8-F Man skall då få fram samma originalblock.
De absoluta adresserna för kretsen fås genom att addera $1FEÛ till 10 15 20 25 30 35 40 464 991 8 ovanstående adresser. En kolumn med dessa finns även.
I enlighet med beskrivningen ovan tillhandahåller således uppfinningen en krypteringskrets med många fördelar. Enligt en första aspekt av uppfin- ningen är kryptokretsen integrerad på ett chips och har en benkonfiguration som överensstämmer med ett standardminne. Kryptokretsen kan således direkt inplaceras i befintlig utrustning på platsen för ett direktminne (RAM).
Själva kryptobiten upptar endast 32 minnespositioner (byte) av 8 kbyte (8192). De 32 byten måste dock av operativsystemet hanteras så att dessa ej används som RAM-positioner. Själva RAM-arean används inte av krypto-/dekryp- toenheten på något sätt utan denna kan eventuellt uteslutas om det inte finns något behov av minnesarean för resten av systemet.
Enligt en andra aspekt av uppfinningen användes ett enda dataregister för att realisera de 16 stegen i DES-algoritmen. Registret på 64 bitar är realiserat med hjälp av de 32 minnespositionerna om vardera 1 byte. En del av minnespositionerna är således redundanta. Genom att använda lämplig logik innefattande bland annat en 3-tillståndsmultiplexer som väljer en av tre bussar möjliggöres således en avsevärd förenkling av kretsen.
En tredje aspekt av uppfinningen är att subnycklarna i DES-algoritmen genereras med hjälp av kombinatorik. Denna teknik är mycket snabb och orsakar ingen fördröjning i datorhastigheten.
Självfallet kan en fackman tänka sig många utföringsformer av föreliggande uppfinning. Uppfinningen är endast begränsad av nedanstående patentkrav.

Claims (6)

5 10 15 20 25 30 35 40 .ßu Ofl lä \I) \l) -~\ 9 PATENTKRAV
1. Krypteringskrets uppbyggd med grindmatristeknik, k ä n n e t e c k - n a d av att kretsen är integrerad på ett chips, varvid kretsens benkonfiguration funktionsmässigt överensstämmer med en minneskrets benkonfiguration, så att krypteringskretsen kan inplaceras i befintlig utrustning på platsen för direktminnet.
2. Krypteringskrets enligt krav 1, k ä n n e t e c k n a d av att kretsens benkonfiguration överensstämmer med ett standardminnes (RAM) benkonfiguration.
3. Krypteringskrets enligt krav 1 eller 2, k ä n n e t e c k n a d av att chipset förutom krypteringsfunktionen även inrymmer adresserbara minnes- positioner i väsentligen samma omfattning som nämnda minneskrets.
4. Krypteringskrets enligt något av föregående krav, k ä n n e - t e c k n a d av att krypteringen utnyttjar 32 minnespositioner om vardera 8 bitar (en byte) av totalt 8 kbyte som ingår i kretsen, varvid resterande minnespositioner kan utnyttjas som ett ordinärt direktminne (RAM).
5. Krypteringskrets enligt något av föregående krav, k ä n n e - t e c k n a d Encryption Standard), varvid ett register, som omfattar 64 bitar av av att krypteringen använder algoritmen enligt DES (Data krypteringens minnespositioner, successivt laddas 17 gånger: en gång för ett inkommande 64 bitars block och 16 gånger för omvandlingen, och insignalerna till registret styrs av en multiplexer. av att
6. Krypteringskrets enligt krav 5, k ä n n e t e c k n a d subnyckelgenerering utföres av ett kombinatoriskt block som är integrerat på chipset.
SE8902165A 1989-06-16 1989-06-16 Krypteringskrets uppbyggd med grindmatristeknik SE464991B (sv)

Priority Applications (3)

Application Number Priority Date Filing Date Title
SE8902165A SE464991B (sv) 1989-06-16 1989-06-16 Krypteringskrets uppbyggd med grindmatristeknik
DE1990622780 DE69022780T2 (de) 1989-06-16 1990-05-18 Verschlüsselungsschaltung.
EP19900850188 EP0403456B1 (en) 1989-06-16 1990-05-18 Encryption circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE8902165A SE464991B (sv) 1989-06-16 1989-06-16 Krypteringskrets uppbyggd med grindmatristeknik

Publications (3)

Publication Number Publication Date
SE8902165D0 SE8902165D0 (sv) 1989-06-16
SE8902165L SE8902165L (sv) 1990-12-17
SE464991B true SE464991B (sv) 1991-07-08

Family

ID=20376293

Family Applications (1)

Application Number Title Priority Date Filing Date
SE8902165A SE464991B (sv) 1989-06-16 1989-06-16 Krypteringskrets uppbyggd med grindmatristeknik

Country Status (3)

Country Link
EP (1) EP0403456B1 (sv)
DE (1) DE69022780T2 (sv)
SE (1) SE464991B (sv)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1102310C (zh) * 1994-07-14 2003-02-26 林仙坎 一种文件加密处理方法
DE69833821T2 (de) * 1997-09-18 2006-11-30 Matsushita Electric Industrial Co., Ltd., Kadoma Übertragungsverfahren und -vorrichtung zum kombinierten Multiplexen und Verschlüsseln
KR100377176B1 (ko) 2000-06-12 2003-03-26 주식회사 하이닉스반도체 데이터 암호화 표준 알고리즘을 이용한 암호화 장치
KR100377172B1 (ko) 2000-06-13 2003-03-26 주식회사 하이닉스반도체 데이터 암호화 표준 알고리즘을 이용한 암호화 장치의 키스케쥴러

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4274085A (en) * 1979-06-28 1981-06-16 Motorola, Inc. Flexible mode DES system
DE3631992A1 (de) * 1986-03-05 1987-11-05 Holger Sedlak Kryptographie-verfahren und kryptographie-prozessor zur durchfuehrung des verfahrens
US4771462A (en) * 1987-02-18 1988-09-13 Hannan Forrest A Communication port encryption/decryption method and apparatus

Also Published As

Publication number Publication date
EP0403456A2 (en) 1990-12-19
DE69022780D1 (de) 1995-11-09
DE69022780T2 (de) 1996-03-14
SE8902165L (sv) 1990-12-17
EP0403456B1 (en) 1995-10-04
EP0403456A3 (en) 1991-01-16
SE8902165D0 (sv) 1989-06-16

Similar Documents

Publication Publication Date Title
US10425222B2 (en) SM4 acceleration processors, methods, systems, and instructions
US11625336B2 (en) Encryption of executables in computational memory
US10217499B2 (en) Modified decode for corner turn
EP0556928B1 (en) A device for enciphering and deciphering, by means of the DES algorithm, data to be written to or read from a hard disk
US7444480B2 (en) Processor, memory device, computer system, and method for transferring data
EP2889760B1 (en) SMS4 acceleration processors, methods, systems, and instructions
JP5112325B2 (ja) 参照テーブルアドレス指定システム及び方法
US20160171249A1 (en) Decryption Systems And Related Methods For On-The-Fly Decryption Within Integrated Circuits
CA2375058A1 (en) A method and system for performing permutations using permutation instructions based on modified omega and flip stages
US8943297B2 (en) Parallel read functional unit for microprocessors
SE464991B (sv) Krypteringskrets uppbyggd med grindmatristeknik
TWI776351B (zh) 利用借助於進階加密標準處理電路之資料保護的資料存取方法、應用於記憶體裝置之記憶體控制器以及應用於記憶體裝置之記憶體控制器的進階加密標準處理電路
US8122190B1 (en) Method and system for reconfigurable memory-based permutation implementation
US20240007283A1 (en) Cryptographic device using transposition function and/or mapping function and cryptographic method thereof
JPH07334359A (ja) 半導体集積回路装置
Mitsuyama et al. VLSI implementation of dynamically reconfigurable hardware-based cryptosystem

Legal Events

Date Code Title Description
NAL Patent in force

Ref document number: 8902165-3

Format of ref document f/p: F

NUG Patent has lapsed

Ref document number: 8902165-3

Format of ref document f/p: F