NO324428B1 - Apparat og fremgangsmate for transformasjon av data - Google Patents

Apparat og fremgangsmate for transformasjon av data Download PDF

Info

Publication number
NO324428B1
NO324428B1 NO19972052A NO972052A NO324428B1 NO 324428 B1 NO324428 B1 NO 324428B1 NO 19972052 A NO19972052 A NO 19972052A NO 972052 A NO972052 A NO 972052A NO 324428 B1 NO324428 B1 NO 324428B1
Authority
NO
Norway
Prior art keywords
data
transformation
sub
input
temporary
Prior art date
Application number
NO19972052A
Other languages
English (en)
Other versions
NO972052D0 (no
NO972052L (no
Inventor
Mitsuru Matsui
Toshio Tokita
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of NO972052D0 publication Critical patent/NO972052D0/no
Publication of NO972052L publication Critical patent/NO972052L/no
Publication of NO324428B1 publication Critical patent/NO324428B1/no

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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
    • H04L2209/122Hardware reduction or efficient architectures
    • 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
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Communication Control (AREA)

Description

Teknisk fagfelt
Foreliggende oppfinnelse angår et apparat for transformasjon av data og en fremgangsmåte for transformasjon av data for koding, dekoding av inngangsdata og dataspredning for å beskytte digital informasjon ved kommunikasjon.
Bakgrunnsteknikk
Parallell-strukturer for flere nivåer av en implementasjon er omtalt i publikasjonen Albert G. Broscius m.fl.: "Exploiting Parellelism in Hardware Implementation of the DES", Advances in Cryptology, Santa Barbara 11.-15. august 1991, Proceedings of the Conference on theory and applications of cryptographic techniques (Crypto), Springer-Verlag, Berlin, 1991, side 367-376, XP000269040. På det laveste nivået kan algoritmens kjerne deles i flere parallelle beregninger for å oppnå øket hastighet. Ved å generere under-nøkler en periode på forhånd, kan den nødvendige tiden effektivt overlappes med bruken av under-nøkkelen i resten av operasjonsrunden. En ytterligere overlapping kan foretas for de to trinnene med XOR-porter, på bekostning av øket kompleksitet og port-antall. Ett nivå høyere i hierarkiet kan bruken av implementasjoner med flere runder øke beregningsbåndbredden, dersom den valgte DES-operajonsmodus ikke krever tilbakekopling av kodenøkkel-tekst. Denne betingelsen utelukker alle andre offisielle modi enn fremgangsmåten ifølge den såkalte "Electronic Code Book" (ECB). Uheldigvis er ECB kjent for å være følsom for angrep basert på klartekst-frekvensanalyse, fordi flere identiske innmatede blokker resulterer i samme utmatede blokk med "cryptext". På systemnivå sørger videre prosesseringen av l/O samtidig med DES-beregning, for kontinuerlig drift av krypteringsenheten. I tillegg til denne bufringen tillater anvendelsen av "Direct Memory Access" (DMA) for kryptering at verts-prosessoren kan fortsette med annet arbeide samtidig med den pågående krypteringen. Ovennevnte publikasjon anses som den nærmestliggende kjente teknikk.
Som en konvensjonell datatransformasjonsmetode for koding er «FEAL-8 Algorithm» (Fast data Encipherment Algorithm-8) beskrevet av Miyaguchi et al.
(Miyaguchi, Shiraishi og Shimizu, «FEAL-8 Enciperment Algorithm» NTT Practical Research Report vol. 39, No. 4/5,1988).
Figur 29 er et deldiagram av den ovennevnte «FEAL-8 Algorithm» kodingsalgoritmen.
I figuren betegner 1001 og 1002 inngangsdata bestående av to sekvenser, 1003 og 1004 betegner utgangsdata bestående av to sekvenser, og 1005,1006, 1007 og 1008 betegner midlertidige data. 1011, 1012,1013 og 1014 viser hhv. en første nøkkelparameter, en andre nøkkelparameter, en tredje nøkkel-parameter og en fjerde nøkkelparameter. Hver av 1021, 1022, 1023 og 1024 viser sub-transformasjonsenheter på hvert transformasjonstrinn. Hver sub-transformasjonsenhet inkluderer hver av de ikke-lineære transformatorene 1031, 1032, 1033,1034 og hveravXELLER (eksklusive eller)-kretsene 1041, 1042, 1043 og 1044.
En operasjon vil bli forklart i det følgende. Inngangsdataene 1001 og 1002 bestående av to sekvenser mottas av sub-transformasjonsenheten 1021 i et første trinn for å transformeres til nye data, dvs. til de midlertidige dataene 1005 og 1006 bestående av to sekvenser. De midlertidige dataene blir sendt inn til sub-transformasjonsenheten 1022 i et andre trinn for å transformeres til nye data, dvs. til de midlertidige dataene 1007 og 1008. Den ovennevnte operasjonen gjentas ialt åtte ganger, og utgangsdataene 1003 og 1004 bestående av to sekvenser blir sendt ut som det siste transformasjonsresultatet fra sub-transformasjonsenheten på det åttende trinnet.
En operasjon til sub-transformasjonsenheten 1021 på det første trinnet vil bli forklart for ett eksempel på sub-transformasjonsenhetene ovenfor.
Sub-transformasjonsenheten 1021 mottar inngangsdataene 1001 og 1002 bestående av to sekvenser og sender ut de midlertidige dataene 1005 og 1006 bestående av to sekvenser. Som beskrevet i detalj i den ovennevnte Practical Research Report, blir de andre inngangsdataene, dvs. inngangsdataene 1002, delt inn i bytes og de inndelte dataene blir eksklusivt ELLER-behandlet med nøkkelparameteren . OG-aritmetisk addisjon gjentas for dataene, og de inndelte dataene blir satt sammen igjen. Denne ikke-lineære transformasjonsoperasjonen utføres i den ikke-lineære transformatoren 1031. De transformerte dataene blir eksklusivt ELLER-behandlet med de første inngangsdataene 1001. Det eksklusivt ELLER-behandlede resultatet sendes ut fra det første trinnet som de andre midlertidige dataene 1006. De andre inngangsdataene 1002 blir på den annen side, sendt ut som de første midlertidige dataene 1005 uten transformasjon.
I den andre sub-transformasjonsenheten 1022 blir data prosessert som i fremgangsmåten ovenfor og de midlertidige dataene fra det andre trinnet oppnås. På samme måten utføres, i dette eksempelet, prosessene bestående av ialt åtte trinn. Som resultat oppnås utgangsdataene 1003 og 1004.
Den konvensjonelle datatransformasjonsapparaturen er konfigurert som beskrevet ovenfor. De transformerte dataene blir bare sendt ut etter at ikke-lineær transformasjon er fullført i ett trinn av sub-transformasjonsenheten, og sendes inn til sub-transformasjonsenheten på det neste trinnet. Det vil si at hver sub-transformasjon utføres sekvensielt og det er tidkrevende å utføre en hel prosedyre.
Foreliggende oppfinnelse er frembragt for å løse problemet ovenfor. Målet med oppfinnelsen er å utføre et stort antall sub-transformasjoner parallelt for å øke prosesseringshastigheten for datatransformasjon så som koding, dekoding og datadiffusjon.
Beskrivelse av oppfinnelsen
Ifølge foreliggende oppfinnelse er det tilveiebrakt en datatransformasjonsapparatur for å transformere første inngangsdata og andre inngangsdata, og de kjennetegnende trekk ved oppfinnelsen fremgår av den karakteriserende del av det vedføyde patentkrav 1.
Fordelaktige og foretrukne utførelsesformer av datatransformasjonsapparaturen ifølge oppfinnelsen fremgår av de vedføyde patentkravene 2-16.
I et annet aspekt av foreliggende oppfinnelse er det tilveiebrakt en fremgangsmåte for datatransformasjon av første inngangsdata og andre inngangsdata, og fremgangsmåten ifølge oppfinnelsen kjennetegnes ved de trinn som fremgår av den karakteriserende del av det vedføyde patentkrav 17.
Datatransformasjonsapparaturen tar inn to vilkårlige datasegmenter, A inngangsdata og B inngangsdata, til en første enhet av apparaturen. En første ikke-lineær transformasjon av A inngangsdataene utføres ved å anvende en første nøkkelparameter, og de transformerte dataene blir eksklusivt ELLER-behandlet med B inngangsdataene. Det eksklusivt ELLER-behandlede resultatet blir sendt ut som midlertidige B data. B inngangsdataene blir sendt ut som midlertidige A data uten transformasjon. I en neste enhet utføres en andre ikke-lineær transformasjon av de midlertidige A dataene ved å anvende en andre nøkkelparameter, og de transformerte dataene blir eksklusivt ELLER-behandlet med de midlertidige B dataene. Det eksklusivt ELLER-behandlede resultatet blir sendt ut som neste midlertidige B data. Midlertidige B data sendt ut fra den første enheten blir sendt ut som neste midlertidige A data uten transformasjon. De to enhetene ovenfor er forbundet i en kaskade, og de siste midlertidige A dataene og de siste midlertidige B dataene blir sendt ut som transformasjonsresultat fra datatransformasjonsapparaturen.
I den grunnleggende konfigurasjonen av apparaturen ovenfor er videre et sett bestående av en første ikke-lineær transformator og en eksklusiv ELLER-krets plassert mellom inngangssiden til den første ikke-lineære transformasjonen og inngangssiden til den andre ikke-lineære transformasjonen, definert som en første sub-transformasjonsenhet. Et annet sett bestående av en andre ikke-lineær transformator og en eksklusiv ELLER-krets plassert mellom inngangssiden til den andre ikke-lineære transformasjonen og inngangssiden til den første ikke-lineære transformasjonen, er definert som en andre sub-transformasjonsenhet. Ellers defineres et sett bestående av den eksklusive ELLER-kretsen og den andre ikke-lineære transformatoren plassert mellom utgangssiden fra den første ikke-lineære transformasjonen og utgangssiden fra den andre ikke-lineære transformasjonen, som den første sub-transformasjonsenheten. Et annet sett bestående av den eksklusive ELLER-kretsen og den første ikke-lineære transformatoren plassert mellom utgangssiden fra den andre ikke-lineære transformasjonen og utgangssiden fra den første ikke-lineære transformasjonen på det neste trinnet, er definert som den andre sub-transformasjonenheten. Uavhengig av definisjonen forbindes et nødvendig antall av de første sub-transformasjonsenhetene ovenfor og de andre sub-transformasjonsenhetene ovenfor alternerende i en kaskade. Fra det siste trinnet blir midlertidige A data og midlertidige B data fra enten den første eller den andre sub-transformasjonenheten sendt ut som transformasjonsresultatet av apparaturen.
Den ikke-lineære transformatoren fra hver sub-transformasjonsenhet har videre en nestet konfigurasjon av den grunnleggende konfigurasjonen for trans-formasjonsapparaturen.
I henhold til en datatransformasjonsmetode blir to vilkårlige datasegmenter A inngangsdata og B inngangsdata sendt inn. B inngangsdataene blir sendt ut som første midlertidige A data i et første trinn. En ikke-lineær transformasjon av A inngangsdataene utføres ved å anvende en første nøkkelparameter. De transformerte dataene blir eksklusivt ELLER-behandlet med B inngangsdataene og de eksklusivt ELLER-behandlede dataene blir sendt ut som første midlertidige B data i et andre trinn. I et tredje trinn blir de første midlertidige B dataene sendt inn og sendt ut som andre midlertidige A data. De første midlertidige A dataene blir sendt inn og en ikke-lineær transformasjon av de midlertidige A dataene utføres ved å anvende en andre nøkkelparameter. De transformerte dataene blir eksklusivt ELLER-behandlet med de første midlertidige B dataene og det eksklusivt ELLER-behandlede resultatet blir sendt ut som andre midlertidige B data i et fjerde trinn. Trinnene ovenfor gjentas fra det første trinnet til det fjerde trinnet. Det andre trinnet eller det fjerde trinnet ovenfor bør være det siste trinnet i transformasjonsmetodten og de siste midlertidige A dataene og de siste midlertidige B dataene blir sendt ut som transformasjonsresultat fra hele prosedyren.
Ved fremgangsmåten ovenfor kan operasjonsrekkefølgen endres, dvs. at en ikke-lineær transformasjon og en eksklusiv ELLER-operasjon kan alterneres. Fremgangsmåten vil fortsatt ha effektive trinn som ovenfor.
Videre er i den grunnleggende konfigurasjonen av apparaturen ovenfor et sett bestående av en første ikke-lineær transformator og den eksklusive ELLER-kretsen plassert mellom inngangssiden til den første ikke-lineære transformasjonen og inngangssiden til den andre ikke-lineære transformasjonen, definert som den første sub-transformasjonsenheten. Et annet sett bestående av den andre ikke-lineære transformatoren og den eksklusive ELLER-kretsen plassert mellom inngangssiden til den andre ikke-lineære transformasjonen og inngangssiden til den første ikke-lineære transformasjonen, er definert som den andre sub-transformasjonsenheten. Ellers defineres et sett bestående av den eksklusive ELLER-kretsen og den andre ikke-lineære transformatoren plassert mellom utgangssiden fra den første ikke-lineære transformasjonen og utgangssiden fra den andre ikke-lineære transformasjonen, definert som den første sub-transformasjonsenheten. Et annet sett bestående av den eksklusive ELLER-kretsen og den første ikke-lineære transformatoren plassert mellom utgangssiden fra den andre ikke-lineære transformasjonen og utgangssiden fra den første ikke-lineære transformasjonen på det neste trinnet, er definert som den andre sub-transformasjonsenheten. Uavhengig av definisjonen forbindes et nødvendig antall av de første sub-transformasjonsenhetene og de andre sub-transformasjonsenhetene ovenfor alternerende i en kaskade. En datavelgerenhet er lagt til inngangssiden til den første sub-transformasjonsenheten og en dataholderenhet er også lagt til utgangssiden fra den ene eller andre sub-transformasjonsenheten. Ved begynnelsen av datatransformasjonen velger datavelgerenheten en av de to vilkårlige datasegmentene A inngangsdata og B inngangsdata. Etter å ha valgt inngangsdata forbindes datavelgerenheten med dataholderenheten og danner en feedback-løkke for å velge utgangsdata fra dataholderenheten. De valgte dataene blir transformert for til slutt å sendes ut fra enten den første eller den andre sub-transformasjonsenheten og lagres i dataholderenheten. Deretter blir midlertidige A data og midlertidige B data sendt ut fra dataholderenheten som transformasjonsresultat fra apparaturen.
I den grunnleggende konfigurasjonen av datatransformasjonsapparaturen ovenfor inkluderer videre de to vilkårlige datasegmentene A inngangsdata og B inngangsdata det samme antallet datasiffer. Et av settene bestående av enten den første ikke-lineære transformatoren og den eksklusive ELLER-kretsen plassert mellom inngangssiden til den første ikke-lineære transformasjonen og inngangssiden til den andre ikke-lineære transformasjonen eller bestående av den andre ikke-lineære transformatoren og den eksklusive ELLER-kretsen plassert mellom utgangssiden fra den andre ikke-lineære transformasjonen og utgangssiden fra den første ikke-lineære transformasjonen, er definert som en sub-transformasjonsenhet. Et nødvendig antall av sub-transformasjonsenhetene blir forbundet. Datavelgerenheten er lagt til hver av de to inngangssidene for A inngangsdata og B inngangsdata i den første sub-transformasjonsenheten. Dataholderenheten legges til hver av de to utgangssidene for A utgangsdata og B utgangsdata i den siste sub-transformasjonsenheten. Som et første trinn av datatransformasjonsprosedyren velger datavelgerenhetene hhv. A inngangsdata og B inngangsdata. Etter å ha valgt inngangsdata forbindes datavelgerenheten med dataholderenheten og danner en feedback-løkke for å velge utgangsdata fra dataholderenheten. De valgte dataene blir transformert, og til slutt sender dataholderenheten ut de midlertidige A dataene og de midlertidige B dataene som transformasjonsresultat.
I den første eller andre ikke-lineære transformasjonen blir videre A inngangsdataene delt inn i A1 inngangsdata som inkluderer noen siffer fra A inngangsdataene og A2 inngangsdata som inkluderer de andre sifrene fra A inngangsdataene. Nøkkelparameteren blir også delt inn i et vilkårlig antall siffer til «n» inndelte nøkkelparametre, fra en første inndelt nøkkelparameter, til en n-te inndelt nøkkelparameter. I en første intern sub-transformasjonsenhet utføres en intern ikke-lineær transformasjon av A1 inngangsdata, dvs. en av de inndelte A inngangsdataene, ved å anvende den første inndelte nøkkelparameteren. De transformerte dataene blir eksklusivt ELLER-behandlet med A2 inngangsdataene og det eksklusivt ELLER-behandlede resultatet blir sendt ut som første interne midlertidige A2 data. A2 inngangsdata blir sendt ut som første interne midlertidige A1 data uten transformasjon. De første interne midlertidige A1 dataene sendt ut fra den første interne sub-transformasjonsenheten blir sendt inn til en andre intern sub-transformasjonsenhet som A1 inngangsdata. En intern ikke-lineær transformasjon av de første interne midlertidige A1 data utføres ved å anvende den andre inndelte nøkkelparameteren. De første midlertidige A2 dataene, sendt inn som A2 inngangsdata, blir eksklusivt ELLER-behandlet med de transformerte første midlertidige A1 dataene. Det eksklusivt ELLER-behandlede resultatet blir sendt ut som andre interne midlertidige A2 data, og de første interne midlertidige A2 data sendes ut som andre interne midlertidige A1 data uten transformasjon. Den første sub-transformasjonsenheten ovenfor og den andre interne sub-transformasjonsenheten er alternerende forbundet «n» ganger. En intern datavelgerenhet blir lagt til inngangssiden til den første interne sub-transformasjonsenheten, og en intern dataholderenhet blir lagt til en av utgangssidene fra enten den første eller den andre interne sub-transformasjonsenheten. Den interne datavelgerenheten velger A1 inngangsdata og A2 inngangsdata. Etter å ha valgt inngangsdata forbindes den interne datavelgerenheten med den interne dataholderenheten og danner feedbackløkken for å velge utgangsdata fra den interne dataholderenheten. De valgte dataene blir transformert og interne midlertidige A1 data og interne midlertidige A2 data blir til slutt sendt ut fra den interne dataholderenheten som de transformerte A utgangsdataene. I den ikke-lineære transformasjonen i hver sub-transformasjonsenhet blir videre A inngangsdataene delt inn i A1 inngangsdata som inkluderer noen siffer fra A inngangsdataene og A2 inngangsdata som inkluderer de andre sifrene fra A inngangsdataene. Nøkkelparameteren blir også delt inn i et vilkårlig antall siffer til «n» inndelte nøkkelparametre, fra en første inndelt nøkkel-parameter, til en n-te inndelt nøkkelparameter. I den første interne sub-transformasjonsenheten utføres en intern ikke-lineær transformasjon av A1 inngangsdataene, dvs. en av de inndelte A inngangsdataene, ved å anvende den første inndelte nøkkelparameteren. De transformerte dataene blir sendt ut som første midlertidige A2 data. A1 inngangsdataene blir eksklusivt ELLER-behandlet med A2 inngangsdataene og det eksklusivt ELLER-behandlede resultatet blir sendt ut som første interne midlertidige A1 data. I den andre interne sub-transformasjonsenheten utføres en intern ikke-lineær transformasjon av de første interne midlertidige A1 dataene, sendt ut fra den første interne sub-transformasjonsenheten og sendt inn som A1 inngangsdata, ved å anvende den andre inndelte nøkkelparameteren. De transformerte dataene blir sendt ut som andre interne midlertidige A2 data. En eksklusiv ELLER-operasjon av de første interne midlertidige A1 dataene og de første interne midlertidige A2 dataene utføres som A1 inngangsdata og A2 inngangsdata. Det eksklusivt ELLER-behandlede resultatet blir sendt ut som andre interne midlertidige A2 data og de første interne midlertidige A2 data blir sendt ut som andre interne midlertidige A1 data. Den første interne sub-transformasjonsenheten og den andre interne sub-transformasjonsenheten ovenfor blir alternerende forbundet «n» ganger. Den interne datavelgerenheten blir lagt til hver av inngangssidene til den første interne sub-transformasjonsenheten og den interne dataholderenheten blir lagt til en av utgangssidene fra enten den første eller den andre interne sub-transformasjonsenheten. Den interne datavelgerenheten velger A1 inngangsdata og A2 inngangsdata. Etter å ha valgt inngangsdata forbindes den interne datavelgerenheten med den interne dataholderenheten og danner feedback-løkken for å velge utgangsdata fra den interne dataholderenheten. De valgte dataene blir transformert og interne midlertidige A1 data og interne midlertidige A2 data blir til slutt sendt ut fra den interne dataholderenheten som de transformerte A utgangsdata.
I begge de to ovennevnte typene av modifisering av datatransformasjonsapparaturen blir videre, når A inngangsdataene deles inn i to inngangsdata med det samme antall siffer, kun den første interne sub-transformasjonsenheten forbundet det nødvendige antall ganger.
Den første interne sub-transformasjonsenheten og den andre interne sub-transformasjonsenheten blir videre alternerende forbundet et nødvendig antall ganger. Den interne datavelgerenheten blir lagt til inngangssiden til den første interne sub-transformasjonsenheten, og den interne dataholderenheten blir lagt til utgangssiden fra enten den første eller den andre interne sub-transformasjonsenheten. Som et første trinn av datatransformasjonen velger den interne datavelgerenheten B1 inngangsdata og B2 inngangsdata. Etter å ha valgt data forbindes den interne datavelgerenheten med den interne dataholderenheten og danner feedback-løkken for å velge utgangsdata fra den interne dataholderenheten. De valgte dataene blir transformert og interne midlertidige B1 data og interne midlertidige B2 data blir til slutt sendt ut fra den interne dataholderenheten som de transformerte B utgangsdata.
I konfigurasjonen ovenfor blir videre, når B inngangsdataene deles inn i to inngangsdata med det samme antall siffer, kun den første interne sub-transformasjonsenheten forbundet det nødvendige antall ganger.
I datatransformasjonsapparaturen blir videre sub-transformasjonsenhetene forbundet et like antall ganger. Datavelgerenheten legges til inngangssiden til den første sub-transformasjonsenheten og dataholderenheten legges til utgangssiden fra den siste sub-transformasjonsenheten. En nøkkelparameter-leveringsenhet blir også lagt til konfigurasjonen ovenfor. Som et første trinn av datatransformasjonen velger datavelgerenheten to vilkårlige datasegmenter A inngangsdata og B inngangsdata. Etter å ha valgt inngangsdata forbindes datavelgerenheten med dataholderenheten og danner feedback-løkken for å velge utgangsdata fra dataholderenheten. Datatransformasjonsapparaturen transformerer gjentagelsesvis de valgte dataene ved å anvende nøkkel-parametrene som hver er levert av nøkkelparameterleveringsenheten til hver av sub-transformasjonsenhetene. Dataholderenheten sender til slutt ut midlertidige A data og midlertidige B data som transformasjonsresultat.
I konfigurasjonen ovenfor er videre minst én av de ikke-lineære transformatorene en X<n> krets (X : et element) på Galois Felt.
X<n> kretsen på Galois Felt ovenfor er videre dannet på en normal basis.
I konfigurasjonen ovenfor er videre minst én del av den ikke-lineære transformatoren ROM.
I konfigurasjonen ovenfor er videre minst én del av den ikke-lineære transformatoren RAM.
I konfigurasjonen ovenfor er videre minst én del av de ikke-lineære transformatorene en logisk krets.
En datatransformator som inkluderer to logiske kretser blir videre lagt til minst én av A inngangsdataene og B inngangsdataene. Hver av de to logiske kretsene ovenfor kan være hvilken som helst av to eksklusive ELLER-kretser og OG-kretser og ELLER-kretser. A inngangsdataene eller B inngangsdataene deles inn i to deler data bestående av et vilkårlig antall siffer, AA-data og AB-data. Nøkkelparameteren blir delt inn i to nøkkelparametre, A transformasjons-nøkkelparameter og B transformasjonsnøkkelparameter. En første OG/ELLER operasjon på AA-dataene og A transformasjonsnøkkelparameteren blir utført. Det første OG-behandlede/ ELLER-behandlede resultatet blir først eksklusivt ELLER-behandlet med AB-dataene og det første eksklusivt ELLER-behandlede resultatet blir sendt ut som transformasjonsresultat av AB-dataene. Det første eksklusivt ELLER-behandlede resultatet blir OG-/ ELLER-behandlet for andre gang med B transformasjonsnøkkelparameteren. En andre eksklusiv ELLER-operasjon av det andre OG-/ ELLER-behandlede resultatet og AA-dataene blir utført, og det andre eksklusivt ELLER-behandlede resultatet blir sendt ut som transformasjonsresultat av AA-dataene. De transformerte AA-dataene og de transformerte AB-dataene blir sendt ut til det neste trinnet som A inngangsdata og B inngangsdata.
Kort beskrivelse av tegningene
Figur 1 er et blokkdiagram som viser en konfigurasjon av en datatransformasjonsapparatur ifølge utførelsesform 1, Figur 2 viser et eksempel på en ikke-lineær transformator, Figur 3 er et blokkdiagram som viser en konfigurasjon av en datatransformasjonsapparatur ifølge utførelsesform 2, Figur 4 viser at datatransformasjonsapparaturen i den første utførelsesformen er logisk identisk med datatransformasjonsapparaturen i den andre utførelsesf ormen, Figur 5 viser et annet eksempel på en datatransformasjonsapparatur med den samme konfigurasjonen som datatransformasjonsapparaturen i den første eller den andre utførelsesf ormen, Figur 6 viser en del av en grunnleggende konfigurasjon og en ikke-lineær transformator i en sub-transformasjonsenhet av en datatransformasjonsapparatur i utførelsesform 3, Figur 7 viser en hel kaskadet konfigurasjon av datatransformasjonsapparaturen i den tredje utførel-sesformen, Figur 8 viser transformasjonsprosedyren for apparaturen i figur 7, Figur 9 viser transformasjonsprosedyren for apparaturen i Figur 7, Figur 10 viser transformasjonsprosedyren for apparaturen i Figur 7, Figur 11 viser en del av en grunnleggende konfigurasjon og en ikke-lineær transformator i en sub-transformasjonsenhet av en datatransformasjonsapparatur i utførelsesform 4. Figur 12 viser en del av kaskadede sub-transformasjonsenheter og en datatransformasjonsprosedyre i datatransformasjonsapparaturen i den fjerde utførel-sesformen, Figur 13 viser en grunnleggende konfigurasjon og en ikke-lineær transformator i sub-transformasjonsenheten i en datatransformasjonsapparatur i utførelsesform 5, Figur 14 er et blokkdiagram som viser en konfigurasjon av en datatransformasjonsapparatur ifølge utførelsesform 6, Figur 15 er et blokkdiagram som viser en konfigurasjon av en data transformasjonsapparatur ifølge utførelsesform 7. Figur 16 er et blokkdiagram som viser en konfigurasjon av en datatransformasjonsapparatur ifølge utførelsesform 8, Figur 17 er et blokkdiagram som viser en konfigurasjon av en data transformasjonsapparatur ifølge utførelsesform 9, Figur 18 viser en konfigurasjon av en ekstern ikke-lineær
transformator for en datatransformasjonsapparatur ifølge utførelsesform 9, Figur 19 viser en konfigurasjon av en intern ikke-lineær transformator for en intern ikke-lineær transformator for en datatransformasjonsapparatur ifølge utførelsesform 9,
Figur 20 viser et eksempel på ikke-lineære elementer (substitusjonstabell) for
den interne ikke-lineære transformatoren for datatransformasjonsapparaturen i den niende utførelsesformen, Figur 21 viser et eksempel på ikke-lineære elementer (substitusjonstabell) for den interne ikke-lineære transformatoren for datatransformasjonsapparaturen i den niende utførelsesformen, Figur 22 viser et eksempel på ikke-lineære elementer i den interne ikke-lineære transformatoren i
Figur19 dannet av en normal basis for X<n> krets på Galois-feltet, Figur 23 er et blokkdiagram som viser en konfigurasjon av en data transformasjonsapparatur ifølge utførelsesform 10, Figur 24 viser en detaljert konfigurasjon av datatransformatoren i Figur 23, Figur 25 er et blokkdiagram som viser en annen datatransformasjonsapparatur ifølge utførelsesform 11, Figur 26 viser hvert trekk ved elleve utførelsesf ormer fra den første utførelsesformen til den ellevte utførelses-formen, Figur 27 viser et anvendelseseksempel på datatransformasjonsapparaturen i oppfinnelsen, Figur 28 viser et applikasjonseksempel på datatransformasjonsapparaturen ifølge oppfinnelsen, og Figur 29 viser en konfigurasjon av en konvensjonell datatransformasjonsapparatur.
Beste metode for å utføre oppfinnelsen
Utførelsesform 1
Innen feltet informasjonsbehandling har koding og dekoding vært et aktuelt tema for å beskytte data eller beskytte datakommunikasjon mellom personer. Det er viktig for koding og dekoding å prosessere data hurtig og å redusere muligheten for kodeanalyse.
Som for velkjente kodingsteknikker blir inngangsdata transformert ikke-lineært ved å anvende en nøkkelparameter. Såkalt differensiell sannsynlighet viser robustheten til koding. Det kan sies at kodingen er robust dersom den differensielle sannsynligheten er liten. Ifølge dokument 1: Provable Security against Differential Cryptanalysis, av Kaisa Nyberg og Lars Ramkilde Knutsen, Journal of Cryptology vol. 8, no. 1 (1995), angående koding av data med en kaskade av en rekke sub-transformasjoner er, dersom differensiell sannsynlighet for ikke-lineær transform er «p», følgende bevist. (1) Dersom det er mer enn tre trinn med sub-transformasjoner er den differensielle sannsynligheten for hele apparaturen mindre enn 2p<2> når ikke-lineær transformasjon utføres i systemet der verdien på utgangsdataene bestemmes én etter én fra inngangsdataene.
I utsagnet ovenfor betyr verdien til utgangsdataene bestemmes én etter én fra inngangsdataene, følgende. Når inngangsdataene X har én av verdiene 0-255 og utgangsdataene Y har én av verdiene 0-255, er én spesifikk verdi på utgangsdataene Y som tilsvarer spesifikke inngangsdata X forut bestemt som et par av inngangsdata og utgangsdata. For eksempel når verdien på inngangsdataene X er 8, er verdien på utgangsdataene Y alltid 125.
I algoritmen vist i Figur 29, dersom hver av de differensielle sannsynlig-hetene for de ikke-lineære transformatorene 1031,1032 og 1033 er «p», blir den differensielle sannsynligheten for hele algoritmen i Figur 29 mindre enn 2p<2>.
Den konvensjonelle teknikken ved FEAL-algoritmen tilhører en type algoritmer som er vist i Figur 29.1 denne FEAL-algoritmen er den differensielle sannsynligheten «p» lik 1 ved ikke-lineær transformasjon i hver sub-transformasjonsprosess, og den differensielle sannsynligheten for hele algoritmen blir derfor mindre enn 2 i henhold til utsagnet ovenfor. Dette forteller ingenting om om robustheten av kodingen.
Figur 2 viser et eksempel på en konvensjonell ikke-lineær transformator.
I figuren betegner 151 en eksklusiv ELLER-krets for den ikke-lineære transformatoren, 152 betegner en invers Galois-felt-krets. Denne ikke-lineære transformatoren returnerer «0» dersom den mottar 0. n viser bitantallet på inngangs/utgangsdataene. Når den ikke-lineære transformatoren i Figur 2 anvendes, er det kjent at den differensielle sannsynligheten «p» blir p= 2/2n (hvor «n» er et odde tall), eller p= 4/2n (hvor «n» er et partall).
Kretsskalaen til den inverse Galois-feltkretsen 152 blir imidlertid stor når størrelsen på inngangsdataene er stor.
Ifølge foreliggende oppfinnelse tilfredsstiller også en konfigurasjon beskrevet nedenfor utsagnet (1) ovenfor, som er bevist i dokument 2: « On Provable Security of Block Ciphers against Differential and Linear Cryptanalysis», (Mitsuru Matsui, tekst for det 18. symposiet for informasjonsteori og dets anvendelser, 24 - 27 oktober 1995). Dokument 2 viser at denne oppfinnelsen gir mer robust koding enn konfigurasjonen i (1) fordi 2p<2> i utsagnet (1) ovenfor kan reduseres til p<2> selv om den ikke-lineære transformasjonsprosessen er den samme som i Figur 29.
I denne utførelsesformen vil datatransformasjonsapparaturen som inkluderer sub-transformasjonsenheten der den differensielle sannsynligheten «p» er liten og data kan transformeres med høy hastighet, bli forklart.
Figur 1 viser en konfigurasjon av datatransformasjonsapparatur i den foreliggende utførelsesformen.
I figuren betegner 101 og 102 hhv. A inngangsdata og B inngangsdata. 103 og 104 betegner A utgangsdata og B utgangsdata på det siste trinnet, som er datatransformasjonsresultatet. 105-108 betegner midlertidige data, og 111-114 betegner nøkkelparametre for koding. 121 -124 betegner sub-transformasjonsenheter fra det første trinnet til det n-te trinnet, inklusive ikke-lineære transformatorer 131 -134 for det første til det n-te trinnet, og eksklusive ELLER-kretser 141 -144.
En operasjon av datatransformasjonsapparaturen i konfigurasjonen ovenfor vil bli forklart i det følgende. Her er lengden på to inngangsdata identiske. I datatransformasjonsprosessen er det tidkrevende å utføre ikke-lineær transformasjon. Tiden for en eksklusiv ELLER-operasjon er liten nok til at den kan ignoreres i forhold til den ikke-lineære transformasjonen.
I Figur 1 utføres en første ikke-lineær transformasjon av én av inngangsdataene, A inngangsdata 101, ved å anvende den første nøkkelparameteren 111 i den eksklusive ELLER-kretsen 151 og i den inverse Galois-feltkretsen 152, som begge er vist i Figur 2. Transformasjonsresultatet 109 blir eksklusivt ELLER-behandlet med de andre inngangsdataene, B inngangsdata 102, og det eksklusivt ELLER-behandlede resultatet blir sendt ut til det neste trinnet som midlertidige B data 106 (S2). B inngangsdataene 102 på den andre side, blir sendt ut tii det neste trinnet uten transformasjon som de første midlertidige A data 105 (S1). En andre ikke-lineær transformasjon av midlertidige A data 105 utføres og transformasjonsresultatet blir eksklusivt ELLER-behandlet med midlertidige B data 106 for å sende ut midlertidige B data 108 (S4). De midlertidige B dataene 106 blir sendt ut til det neste trinnet som midlertidige A data 107 uten transformasjon (S3). I operasjonsfremgangsmåten ovenfor utføres operasjonen til den andre ikke-lineære transformatoren 132 parallelt med den første ikke-lineære transformasjonen.
I både sub-transformasjonsenheten for oddetalls-trinn og partalls-trinn utføres ikke-lineære transformasjoner nesten parallelt som beskrevet ovenfor, noe som muliggjør hurtig datatransformasjon.
I forklaringen ovenfor av utførelsesformen er lengden på to inngangsdata den samme. I et annet tilfelle, når lengden på to inngangsdata er forskjellig, for eksempel når A inngangsdataene inkluderer ni bits og B inngangsdataene inkluderer n2 bits (ni > n2), er følgende bevist. (2) Dersom det er fler enn tre trinn med sub-transformasjoner er den differensielle sannsynligheten for hele apparaturen mindre enn p<2> når ikke-lineær transformasjon utføres i systemet der verdien på utgangsdataene bestemmes én etter én fra inngangsdataene.
I konfigurasjonen i Figur 1 følger fra dette at når lengden på de to inngangsdataene er forskjellig, selv om den differensielle sannsynligheten «p» for hver sub-transformasjonsenhet er den samme som i tilfellet ovenfor, kan datatransformasjonsapparaturen konfigureres slik at den differensielle sannsynligheten «p» for hele apparaturen er garantert å være mindre enn p<2>. Som for inngangsdata til den eksklusive ELLER-kretsen til apparaturen ovenfor, er to datasegmenter med forskjellig lengde inngangsdata. De ekstra databitsene ((ni - n2) bits) i A inngangsdataene ekskluderes i den eksklusive ELLER-operasjonen. Kun det samme antall bits som B inngangsdata (n2 bits) av A inngangsdataene blir eksklusivt ELLER-behandlet med B inngangsdataene. Ved en annen operasjonsmode kan for eksempel (ni - n2) bits med konstanter legges til B inngangsdataene og B inngangsdataene med den tillagte delen eksklusivt ELLER-behandles med A inngangsdataene. Videre suppleres nøkkelparameteren korrekt svarende til lengden av data som skal prosesseres når A inngangsdataene og B inngangsdataene har forskjellig lengde.
Maskinvarekonfigurasjonen er beskrevet for denne utførelsesformen. Det er også mulig å utføre en ikke-lineær transformasjon og en eksklusiv ELLER-operasjon med programvare. Datatransformasjonsapparaturen kan utføre en operasjon for et oddetallstrinn og en annen operasjon for et partallstrinn parallelt, hvilket er like effektivt som ovenfor.
Utførelsesform 2
En annen konfigurasjon for en hurtig ikke-lineær transformasjon, som er et hovedpunkt ved foreliggende oppfinnelse, vil bli forklart i det følgende.
I denne utførelsesformen er plasseringen av den eksklusive ELLER-kretsen endret i hver sub-transformasjonsenhet, Figur 3 viser et blokkdiagram av denne konfigurasjonen. I figuren betegner 161 -164 første til fjerde sub-transformasjonsenhet. Nøkkelparametrene 111 -114, de ikke-lineære transformatorene 132 -135 og de eksklusive ELLER-kretsene 141 -144 er de samme elementene som de i den første utførelsesformen i Figur 1. interne forbindelser mellom sub-transformasjonsenhetene 161 -164 er forskjellige fra sub-transformasjonsenhetene 121 -124 i Figur 1.
I datatransformasjonsapparaturen, hvor elementer er forbundet som beskrevet ovenfor, blir den differensielle sannsynligheten for hele apparaturen mindre enn p<2>, som er mindre enn 2p<2> som gitt i (1), og apparaturen kan generere robust koding.
Som for A inngangsdataene 101 og B inngangsdataene 102 sendt inn til den første sub-transformasjonsenheten 161, blir A inngangsdataene ikke-lineært transformert ved å anvende den første nøkkelparameteren 111 i den ikke-lineære transformatoren 132, og transformasjonsresultatet blir sendt ut som midlertidige B data 106 fra det første trinnet (S12). A inngangsdataene 101 blir eksklusivt ELLER-behandlet med B inngangsdataene 102 i den eksklusive ELLER-kretsen 141, og det eksklusivt ELLER-behandlede resultatet blir sendt ut som midlertidige A data 105 fra det første trinnet (S11).
Midlertidige A data 105 sendt ut fra den første sub-transformasjonsenheten 161, blir sendt inn til den andre sub-transformasjonsenheten 162. Midlertidige A data blir ikke-lineært transformert ved å anvende den andre nøkkelparameteren 112 i den ikke-lineære transformatoren 133, og transformasjonsresultatet blir sendt ut som midlertidige B data 108 fra det andre trinnet (S14). De midlertidige A dataene 105 på det første trinnet og de midlertidige B dataene 106 blir eksklusivt ELLER-behandlet i den eksklusive ELLER-kretsen 142, og det eksklusivt ELLER-behandlede resultatet sendes ut som midlertidige A data 107 fra det andre trinnet (S13).
Den første og den andre sub-transformasjonsenheten ovenfor er alternerende forbundet. Det siste trinnet kan være enten den første eller den andre sub-transformasjonsenheten som i den første utførelsesformen.
I datatransformasjonsapparaturen forbundet som beskrevet ovenfor er den differensielle sannsynligheten for hele apparaturen mindre enn p<2> ifølge dokument 2, som ble forklart i den første utførelsesformen. Når det gjelder operasjonshastigheten for kretsen, er den eksklusive ELLER-operasjonen mye raskere enn den ikke-lineære transformasjonen. Den ikke-lineære transformasjonen på det første trinnet og det andre trinnet blir således utført parallelt, noe som øker prosesseringshastigheten for datatransformasjonsapparaturen som helhet.
I det følgende vil det bli forklart, med referanse til Figur 4, at konfigurasjonen i Figur 1 hovedsaklig er den samme som konfigurasjonen i Figur 3.
I Figur 4 viser 121 -124 sub-transformasjonsenhetene i Figur 1.161 -164 viser sub-transformasjonsenhetene i Figur 3. Begge sub-transformasjonsenhetene i Figur 1 og sub-transformasjonsenhetene i Figur 3 er inkludert i konfigurasjonen i Figur 4. Forskjellen mellom Figur 1 og Figur 3 er hvilken del av kretsen som er definert som en sub-transformasjonsenhet. I Figur 1 er nemlig elementene mellom inngangssiden til den første ikke-lineære transformatoren
131 og inngangssiden til den andre ikke-lineære transformatoren 132 (den første ikke-lineære transformatoren 131 og den eksklusive ELLER-kretsen 141) definert som den første sub-transformasjonsenheten 121. Elementene mellom inngangssiden til den andre ikke-lineære transformatoren 132 og inngangssiden til den
neste første ikke-lineære transformatoren 133 (den andre ikke-lineære transformatoren 132 og den eksklusive ELLER-kretsen 142), er definert som den andre sub-transformasjonsenheten 122.1 Figur 3 er elementene mellom utgangssiden fra den første ikke-lineære transformatoren 131 og utgangssiden fra den andre ikke-lineære transformatoren 132 ( den eksklusive ELLER-kretsen 141 og den andre ikke-lineære transformatoren 132) definert som den første sub-transformasjonsenheten 161. Elementene mellom utgangssiden fra den andre ikke-lineære transformatoren 132 og utgangssiden fra den neste første ikke-lineære transformatoren 133 ( den eksklusive ELLER-kretsen 142 og den første ikke-lineære transformatoren 133), er definert som den andre sub-transformasjonsenheten 162.
Figur 5 viser en konfigurasjon for et annet eksempel på datatransformasjonsapparaturen som hovedsaklig er den samme som i konfigurasjonene i Figur 1 og Figur 3.
I Figur 5 er de eksklusive ELLER-kretsene 141 -145 forbundet i en kaskade. Dvs. de eksklusive ELLER-kretsene er forbundet slik at utgangsdataene fra den eksklusive ELLER-kretsen blir én av inngangsdataene til den neste eksklusive ELLER-kretsen. De ikke-lineære transformatorene 133,133 og 135 er hhv. forbundet med de odde nummererte eksklusive ELLER-kretsene 141, 143 og 145. De ikke-lineære transformatorene 132,134 og 136 er hhv. forbundet med de like nummererte eksklusive ELLER-kretsene 142 og 144 .
Datatransformasjonsapparaturen konfigurert som vist i Figur 5 kan prosessere data hurtig fordi operasjonene til den første og den andre ikke-lineære transformatoren 131 og 132, 133 og 134 eller 135 og 136 utføres nesten parallelt som i datatransformasjonsapparaturen konfigurert som vist i figurene 1 og 3.
Utførelsesform 3
Som beskrevet i utførelsesform 1, når inngangs-/utgangsdataene blir store i den ikke-lineære transformatoren i Figur 2, blir kretsskalaen også stor. I denne utførelsesformen er datatransformasjonsapparaturen nestet for å danne en kompakt datatransformasjonsapparatur som anvender en liten ikke-lineær transformator (f.eks. en invers elementkrets).
FEAL-algoritmen fra konvensjonell teknikk genererer ikke robust nok koding fordi den differensielle sannsynlighet «p» er stor.
I denne utførelsesformen anvendes en liten ikke-lineær transformator, noe som gjør kretsskalaen (kretsstørrelsen) liten og også reduserer den differensielle sannsynligheten for kretsen som helhet.
Figur 6 viser sub-transformasjonsenheten og den ikke-lineære transformatoren plassert inne i sub-transformasjonsenheten.
I Figur 6 viser «a» sub-transformasjonsenheten på det første trinnet, 221 viser den eksterne sub-transformasjonsenheten, og 231 viser den eksterne ikke-lineære transformatoren i den. «b» viser en detaljert konfigurasjon av den ikke-lineære transformatoren 231 ovenfor. En intern inndelingsenhet 351 deler A inngangsdataene 101 inn i to deler, A1 inngangsdata 301 og A2 inngangsdata 302. 303 - 308 betegner interne midlertidige data og 311 - 313 betegner inndelte nøk-kelparametre fra nøkkelparameteren 111. En intern samleenhet 352 samler de interne midlertidige dataene 303 og de interne midlertidige dataene 304. 321 og 322 viser interne sub-transformasjonsenheter, 331 - 333 viser interne ikke-lineær transformatorer, og 341 -343 viser interne eksklusive ELLER-kretser. En nøkkel-parameterleveringsenhet 158 deler inn nøkkelparameteren 111.
For eksempel, i algoritmen vist i Figur 6, når de interne ikke-lineære transformatorene 331, 332 og 333 som har differensiell sannsynlighet «p» anvendes, blir den differensielle sannsynligheten til den eksterne ikke-lineære transformatoren 231 mindre enn p<2>. Den differensielle sannsynlighet for algoritmen som inkluderer mer enn tre trinn av de eksterne sub-transformasjonsenhetene 221 blir dermed mindre enn (p<2>)<2> = p<4>.
Figur 7 viser en hel konfigurasjon for sub-transformasjonsenheten hvor fire trinn av de eksterne sub-transformasjonsenhetene vist som «a» i Figur 6, er forbundet og hver av de eksterne sub-transformasjonsenhetene inkluderer de ikke-lineære transformatorene vist som «b» i Figur 6, som har tre trinn av de interne sub-transformasjonsenhetene.
I figuren er bare representative elementer angitt med referansenummer: de eksterne sub-transformasjonsenhetene 221 - 224, de eksterne ikke-lineære transformatorene 231 - 234, de eksklusive ELLER-kretsene 141 -144 til den eksterne sub-transformasjonsenheten, de interne sub-transformasjonsenhetene 321 -323, de interne ikke-lineære transformatorene 331 - 336 til den første og den andre eksterne ikke-lineære transformatoren 231 og 232.
Figurene 8-10 viser en sekvensiell datatransformasjonsprosedyre til datatransformasjonsapparaturen konfigurert som vist i Figur 7.
I det følgende blir en operasjon med den eksterne ikke-lineære transformatoren 231 forklart med referanse til Figur 6.
Den interne inndelingsenheten 351 deler inn A inngangsdataene 101 bestående av et vilkårlig antall siffer mottatt ved den eksterne sub-transformasjonsenheten 221, i to datasegmenter, A1 inngangsdata 301 og A2 inngangsdata 302. Nøkkelparameterleveringsenheten 158 deler inn nøkkel-parameteren 111 bestående av et vilkårlig antall siffer i «n» inndelte nøkkel-parametre. Nøkkelparameterleveringsenheten 158 leverer de inndelte nøkkel-parametrene som den første inndelte nøkkelparameter 311 til den n-te inndelte nøkkelparameter 313. I den første interne sub-transformasjonsenheten 321 utføres en intern ikke-lineær transformasjon av A1 inngangsdataene 101, de inndelte dataene fra A inngangsdataene 101, ved å anvende den første inndelte nøkkelparameteren 311. De transformerte dataene blir eksklusivt ELLER-behandlet med A2 inngangsdataene 302, og det eksklusivt ELLER-behandlede resultatet sendes ut som de første interne midlertidige A2 dataene 306. A2 inngangsdataene sendes ut som de første interne midlertidige A1 data 305 uten transformasjon.
De første interne midlertidige A1 dataene 305 fra den første interne sub-transformasjonsenheten 321 sendes inn til den andre interne sub-transformasjonsenheten 322 som A1 inngangsdata. En intern ikke-lineær transformasjon av de første interne midlertidige A1 dataene 305 utføres ved å anvende den andre inndelte nøkkelparameteren 312. De transformerte dataene blir eksklusivt ELLER-behandlet med A2 inngangsdataene, dvs de første interne midlertidige A2 dataene 306. Det eksklusivt ELLER-behandlede resultatet sendes ut som de andre interne midlertidige A2 dataene 308 og de første interne midlertidige A2 dataene 306 sendes ut som de andre interne midlertidige A1 dataene 307 uten transformasjon. Den første interne sub-transformasjonsenheten ovenfor og den andre interne sub-transformasjonsenheten ovenfor er forbundet alternerende opp til «n» trinn. Interne midlertidige A1 data 303 og interne midlertidige A2 data 304 på det siste trinnet blir satt sammen av den interne samleenheten 352 og resultatet sendes ut som transformasjonsresultatet 109.
En operasjon av datatransformasjonsapparaturen i Figur 7 konfigurert som beskrevet ovenfor, vil bli forklart i det følgende.
I den første syklusen blir både A inngangsdataene 101 og B inngangsdataene 102 sendt inn og prosessert som vist i Figur 8. Det er tidkrevende å utføre en ikke-lineær transformasjon, slik at det meste av tiden som brukes i den første syklusen brukes i operasjonene til de ikke-lineære transformatorene 331 og 332 i den eksterne sub-transformasjonsenheten 221 og de interne ikke-lineære transformatorene 334 og 335 i den eksterne sub-transformasjonsenheten 222. Det vil si, data blir levert inne i datatransformasjonsapparaturen i den første syklusen som vist ved den fete linjen i Figur 8, og operasjonene utføres i de interne ikke-lineære transformatorene 331, 332, 334 og 335.
I den neste syklusen utføres operasjonene som vist i Figur 9. Det vil si at det meste av tiden i den andre syklusen brukes av den interne ikke-lineære transformatoren 333 i den første eksterne sub-transformasjonsenheten 221, den interne ikke-lineære transformatoren 336 i den andre eksterne sub-transformasjonsenheten 222, den interne ikke-lineære transformatoren 337 i den tredje eksterne sub-transformasjonsenheten 223 og den interne ikke-lineære transformatoren 391 i den fjerde eksterne sub-transformasjonsenheten 224.1 figuren viser den fete, stiplede linjen transmisjonen av dataene på A-inngangssiden.
I den neste syklusen utføres operasjonene som vist i Figur 10. Det vil si at det meste av tiden i denne syklusen brukes av de andre interne ikke-lineære transformatorene 338, 339 og 392, 393 i den tredje og den fjerde eksterne sub-transformasjonsenheten 223 og 224. Operasjonen til hele datatransformasjonsprosedyren er fullført etter disse tre syklusene. I det konvensjonelle systemet transformeres dataene sekvensielt, dvs at de ikke-lineære transformasjonene på hvert trinn starter etter at de ikke-lineære transformasjonene på det forrige trinnet er ferdige. I dette konvensjonelle datatransformasjonstilfellet krever den konvensjonelle datatransformasjonsprosedyren 12 sykluser. Det vil si at datatransformasjonsapparaturen i denne utførelsesformen kan prosessere data omtrent fire ganger raskere enn den konvensjonelle datatransformasjonsapparaturen.
I datatransformasjonsapparaturen i denne utførelsesformen anvendes en ikke-lineær transformator f ra utførelsesform 1 som de ikke-lineære transformatorene 331 - 393, som har en nestet konfigurasjon i sub-transformasjonsenhetene. En ikke-lineær transformator f ra utførelsesform 2, som også er nestet, kan også anvendes. Den samme effekten kan oppnås som i de ikke-lineære transformatorene i utførelsesform 1.
Utførelsesform 4
I denne utførelsesformen anvendes en liten ikke-lineær transformator på den ikke-lineære transformatoren i den konvensjonelle sub-transformasjonsenheten.
Figur 11 viser sub-transformasjonsenheten og den detaljerte konfigurasjonen av den ikke-lineære transformatoren inne i sub-transformasjonsenheten.
I Figur 11 viser «a» sub-transformasjonsenheten på det første trinnet. 421 betegner en ekstern sub-transformasjonsenhet og 431 betegner en ekstern ikke-lineær transformator.. I Figur 11 viser «b» en detaljert konfigurasjon av den eksterne ikke-lineære transformatoren 431, 551 viser en intern inndelingsenhet og 501 - 508 betegner inngangsdata. 511 - 513 betegner inndelte nøkkel-parametre fra nøkkelparameteren 111. 552 viser en intern samleenhet, 521 - 523 viser interne sub-transformasjonsenheter, 531 - 533 viser interne ikke-lineære transformatorer og 541 - 543 betegner eksklusive ELLER-kretser.
I algoritmen vist i Figur 11, når de interne ikke-lineære transformatorene 531, 532 og 533 har den differensielle sannsynligheten «p», er den differensielle sannsynligheten for den eksterne ikke-lineære transformatoren 431 mindre enn p<2>. Fra dette blir den differensielle sannsynligheten til algoritmen mindre enn 2(p<2>)<2> = 2p<4> når algoritmen inkluderer mer enn tre trinn av den eksterne sub-transformasjonsenheten 421.
I Figur 12 viser «a» en generell konfigurasjon av sub-transformasjonsenheten, hvor to trinn av de eksterne sub-transformasjonsenhetene vist som «a» i Figur 11 blir forbundet. Den interne sub-transformasjonsenheten som har tre trinn vist som «b» i Figur 11 anvendes som den ikke-lineære transformatoren i hver sub-transformasjonsenhet. Figur 12 viser også en sekvensiell datatransformasjonsprosedyre for datatransformasjonsapparaturen konfigurert som «a».
I figuren er bare representative elementer angitt med referansenummer: eksterne sub-transformasjonsenheter 421 og 422, eksklusive ELLER-kretser 441 og 442 i de eksterne sub-transformasjonsenhetene, interne sub-transformasjonsenheter 521, 522 og 523 og interne ikke-lineære transformatorer 531 - 536 inne i den første og den andre sub-transformasjonenheten. De andre elementene er ikke angitt med referansenummer.
I det følgende vil en operasjon av datatransformasjonsapparaturen konfigurert som beskrevet ovenfor bli forklart.
I den første syklusen blir A inngangsdataene 101 og B inngangsdataene 102 sendt inn og prosessert som vist som «b» i Figur 12. Det er tidkrevende å prosessere data i de interne ikke-lineære transformatorene 531 og 532 i den eksterne sub-transformasjonsenheten 421. Det vil si at i den første syklusen blir dataene prosessert i de interne ikke-lineære transformatorene 531 og 532 og A inngangsdataene og B inngangsdataene blir overført som vist av den fete linjen i «b» i Figur 12.
I den neste syklusen blir dataene videre prosessert som vist i «c» i Figur 12. Det er tidkrevende å prosessere data i den interne ikke-lineære transformatoren 533 i den eksterne sub-transformasjonsenheten 421 og den interne ikke-lineære transformatoren 534 i den andre sub-transformasjonsenheten 422. Den fete stiplede linjen viser dataoverføring på A inngangssiden.
I den neste syklusen blir dataene videre prosessert som vist i «d» i Figur 12. Det er tidkrevende å prosessere data i de andre interne ikke-lineære transformatorene 535 og 536 i den andre eksterne sub-transformasjonsenheten 422. Operasjonene til hele datatransformasjonsprosedyren er fullført etter disse tre syklusene. I det konvensjonelle systemet blir dataene prosessert sekvensielt, dvs at de ikke-lineære transformasjonene på hvert trinn starter etter at de ikke-lineære transformasjonene på det forrige trinnet er ferdige. I dette konvensjonelle dataoverføringseksempelet krever den konvensjonelle datatransformasjonsprosedyren 6 sykluser. Datatransformasjonsapparaturen i denne utførelses-formen fullfører datatransformasjonen på tre sykluser, hvilket betyr at en hurtig operasjon kan oppnås.
I utførelsesformen ovenfor anvendes den ikke-lineære transformatoren vist i utførelsesform 1 inne i sub-transformasjonsenheten som har en nestet konfigurasjon. Den ikke-lineære transformatoren vist i utførelsesform 2 kan også anvendes i en nestet konfigurasjon på samme måte, hvilket gir den samme effekten.
Utførelsesform 5
En annen datatransformasjonsapparatur hvor en ikke-lineær transformator, som er et grunnleggende element i konfigurasjonen ifølge foreliggende oppfinnelse, anvendes på en ikke-lineær transformator inne i den konvensjonelle sub-transformasjonsenheten.
Figur 13 viser en konfigurasjon av denne datatransformasjonsapparaturen og den ikke-lineære transformatoren inne i sub-transformasjonsenheten.
I Figur 13 viser «a» en vanlig konfigurasjon, 621 - 624 betegner eksterne sub-transformasjonsenheter, 631 - 634 betegner eksterne ikke-lineære transformatorer inne i de eksterne sub-transformasjonsenhetene og 641 - 644 og 741 - 744 betegner eksklusive ELLER-kretser. 601, 602, 701 og 702 betegner hhv. A1 inngangsdataene, B1 inngangsdataene, A2 inngangsdataene og B2 inngangsdataene. 603, 604, 703 og 704 betegner utgangsdataene etter transformasjon. 605 - 608 og 705 - 708 betegner midlertidige data. I Figur 13 viser «b» en detaljert konfigurasjon av den eksterne ikke-lineære transformatoren 631. 651 og 751 er data etter ikke-lineær transformasjon, 775 - 778 betegner interne midlertidige data og 711 - 713 betegner inndelte nøkkelparametre fra nøkkelparameteren 111. 721 - 723 betegner interne sub-transformasjonsenheter, 731 - 733 betegner interne ikke-lineære transformatorer og 761 - 763 betegner eksklusive ELLER-kretser.
Datatransformasjonsapparaturen i Figur 13 tar inn fire vilkårlige datasegmenter, A1 inngangsdata, A2 inngangsdata, B1 inngangsdata og B2 inngangsdata. I hver sub-transformasjonsprosess utføres en ikke-lineær transformasjon og en eksklusiv ELLER-operasjon mellom A1 inngangsdataene og B1 inngangsdataene og mellom A2 inngangsdataene og B2 inngangsdataene. Transformasjonsresultatet sendes ut som midlertidige B1 data og midlertidige B2 data. B1 inngangsdataene og B2 inngangsdataene blir midlertidige A1 data og midlertidige A2 data uten transformasjon.
En operasjon av datatransformasjonsapparaturen ovenfor skjer på samme måte som i datatransformasjonsapparaturene i utførelsesf ormene 3 og 4 som er beskrevet i detalj ovenfor, og forklares ikke her. Datatransformasjonsapparaturen i denne utførelsesformen øker operasjonshastigheten til apparaturen.
Utførelsesform 6
I denne utførelsesformen blir den første sub-transformasjonsenheten 121 og den andre sub-transformasjonsenheten 122 satt sammen til en grunnleggende operasjonsenhet. Datatransformasjonsprosessen i utførelsesform 1, som ble utført av mange første sub-transformasjonsenheter 121 og mange andre sub-transformasjonsenheter 122 forbundet alternerende, utføres ved å gjenta operasjonen med den grunnleggende operasjonsenheten ovenfor. Det vil si at en operasjonsenhet blir konfigurert av den første sub-transformasjonsenheten 121 og den andre sub-transformasjonsenheten 122, hvilkes operasjoner kan utføres repeterende. På slutten av operasjonen utført av denne operasjonsenheten blir utgangsdataene fra den andre sub-transformasjonsenheten lagret og leveres som de neste inngangsdataene til den første sub-transformasjonsenheten. Operasjonen til operasjonsenheten kan derfor repeteres, noe som reduserer skalaen (størrelsen av) på maskinvaren.
Figur 14 er et blokkdiagram som viser konfigurasjonen ovenfor. I figuren viser 121 og 122 hhv. den første og den andre sub-transformasjonsenheten. 111 og 112 viser den første og den andre nøkkelparameteren. De ikke-lineære transformatorene 131 og 132 og de eksklusive ELLER-kretsene 141 og 142 er de samme som i Figur 1 i utførelsesform 1. 153 betegner en kontrollenhet, 154 betegner en repetisjonsenhet, 156a og 156b er datavelgerenheter, 157a og 157b er dataholderenheter og 158 betegner en nøkkelparameterleveringsenhet.
Det følgende er en operasjon av datatransformasjonsapparaturen ovenfor.
Vilkårlige A inngangsdata 101 og B inngangsdata 102 sendes inn til den første sub-transformasjonsenheten 121 via datavelgerenhetene 156a og 156b. Deretter blir midlertidige A data 105 og midlertidige B data 106 sendt inn til den andre sub-transformasjonsenheten 122. Operasjonen til den første og den andre sub-transformasjonsenheten er de samme som i utførelsesform 1. Nøkkelparameterleveringsenheten 158 leverer parametre, som passer til hver av den første og den andre sub-transformasjonsenheten, til de ikke-lineære transformatorene i den første og den andre sub-transformasjonsenheten for repetisjonsprosessen, hvilket vil bli forklart under, midlertidige A data 107 og midlertidige B data 108 sendt ut fra den andre sub-transformasjonsenheten 122 blir sendt inn til dataholderenhetene 157a og 157b. Dataene blir deretter overført til datavelgerenhetene 156a og 156b gjennom repetisjonsenheten 154, og således sendt inn til den første sub-transformasjonsenheten 121 som A inngangsdata og B inngangsdata. Deretter gjentas prosessen ovenfor for til slutt å sende ut A utgangsdataene 103 og B inngangsdataene 104.
Datatransformasjonsapparaturen i denne utførelsesformen kan transformere data med like høy hastighet som i utførelsesform 1. Antallet sub-transformasjonsenheter er senket, hvilket reduserer størrelsen av apparaturen.
I utførelsesformen ovenfor er et sett bestående av ett trinn av den første sub-transformasjonsenheten 121 og ett trinn av den andre sub-transformasjonsenheten 122 definert som en grunnleggende operasjon som repeteres. Dvs. et sett bestående av den første sub-transformasjonsenheten og den andre sub-transformasjonsenheten blir forbundet et nødvendig antall ganger og kan defineres som en operasjonsenhet som repeteres.
I en konfigurasjon i Figur 14 defineres et sett bestående av den første sub-transformasjonsenheten og den andre sub-transformasjonsenheten som en enhet som forbindes i en kaskade. Datatransformasjonsapparaturen inkluderer således alltid et like antall sub-transformasjonsenheter. Passende transformasjon kan derfor gjøres selv om A inngangsdataene og B inngangsdataene består av et ulikt antall siffer. For eksempel anvendes A inngangsdata bestående av 7 siffer og B inngangsdata bestående av 9 siffer. Nøkkelparameterleveringsenheten 158 leverer nøkkelparameteren 111 for 7 datasiffer til den ikke-lineære transformatoren 131 og nøkkelparameterleveringsenheten 158 leverer nøkkelparameteren 112 for 9 datasiffer til den ikke-lineære transformatoren 132. A inngangsdataene 101 bestående av 7 siffer blir ikke-lineært transformert i den ikke-lineære transformatoren 131 som anvender nøkkelparameteren 111 for 7 siffer til midlertidige B data 106 bestående av 7 siffer og sendes således ut som midlertidige A data 107. Disse midlertidige A dataene 107 blir overført gjennom dataholderenheten 157a og datavelgerenheten 156a, og blir til A inngangsdata igjen. Således bør det være et like antall sub-transformasjonsenheter slik at A inngangsdataene på 7 siffer alltid transformeres ved å anvende nøkkel-parameteren 111 for 7 siffer. Dersom det er et odde antall sub-transformasjonsenheter i den ikke-lineære transformasjonsenheten 131, blir data bestående av 7 siffer og data bestående av 9 siffer ikke-lineært transformert alternerende.
Et odde antall sub-transformasjonsenheter kan forbindes i en kaskade dersom nøkkelparameterleveringsenheten 158 kan levere nøkkelparameteren for 7 datasiffer og nøkkelparameteren for 9 datasiffer alternerende ( dette tilfellet er ikke vist i figuren).
Utførelsesform 7
I denne utførelsesformen utføres nå prosessen utført av datatransformasjonsapparaturen i utførelsesform 2, som er konfigurert med mange første sub-transformasjonsenheter 161 og mange andre sub-transformasjonsenheter 162 alternerende forbundet, ved å gjenta operasjonen til den grunnleggende operasjonsenheten til en første sub-transformasjonsenhet og en andre sub-transformasjonsenhet. Det vil si at en feedback-løkke dannes som i utførelsesform 6, slik at midlertidige A data og midlertidige B data returneres til datavelgerenheten ved inngangssiden for å bli prosessert på nytt. Kretsskalaen kan således reduseres.
Figur 15 er et blokkdiagram som viser konfigurasjonen ovenfor. I figuren viser 125 og 126 hhv. den første sub-transformasjonsenheten og den andre sub-transformasjonsenheten. 111 og 112 viser hhv. den første og den andre nøkkel-parameteren. De ikke-lineære transformatorene 132 -133 og de eksklusive ELLER-kretsene 141 -142 er de samme som i Figur 3 i utførelsesform 2. Kontrollenheten 153, repetisjonsenheten 154, datavelgerenhetene156a og 156b, dataholderenhetene 157a og 157b og nøkkelparameterleveringsenheten 158 er de samme som i utførelsesform 6.
Det følgende er en operasjon med datatransformasjonsapparaturen konfigurert som beskrevet ovenfor.
Vilkårlige A inngangsdata 101 og B inngangsdata 102 sendes inn til den første sub-transformasjonsenheten 125 via datavelgerenhetene 156a og 156b. Deretter blir midlertidige A data 105 og midlertidige B data 106 sendt inn til den andre sub-transformasjonsenheten 126. Operasjonene til den første og den andre sub-transformasjonsenheten er de samme som i utførelsesform 2. Nøkkel-parameteren, som skal leveres til den første og den andre sub-transformasjonsenheten svarende til repetisjonsprosessen beskrevet nedenfor, leveres til de ikke-lineære transformatorene i den første og den andre sub-transformasjonsenheten av nøkkelparameterleveringsenheten 158. Midlertidige A data 107 og midlertidige B data 108 sendt ut fra den andre sub-transformasjonsenheten 126 overføres gjennom dataholderenhetene 157a og 157b, datavelgerenhetene 156a og 156b i repetisjonskretsen 154 for å sendes inn til den første sub-transformasjonsenheten 125 hhv. som A inngangsdata og B inngangsdata. Etter repetisjonsprosessen ovenfor blir A utgangsdataene 103 og B utgangsdataene 104 til slutt sendt ut.
Datatransformasjonen kan utføres hurtig i konfigurasjonen ovenfor av samme grunn som i utførelsesform 2, videre kan antallet sub-transformasjonsenheter senkes og kretsskalaen reduseres.
I den ovenstående forklaringen av operasjonen blir ett trinn av den første sub-transformasjonsenheten 125 og ett trinn av den andre sub-transformasjonsenheten 126 forbundet i en kaskade som danner operasjonsenheten som repeteres. Dvs. den første sub-transformasjonsenheten 125 og den andre sub-transformasjonsenheten 126 blir satt sammen i et par og et nødvendig antall trinn forbindes i en kaskade for å danne operasjonsenheten som repeteres, hvilket er det samme som i utførelsesform 6. Som et annet eksempel, selv om en detaljert konfigurasjon av dette ikke er vist i figuren og en operasjon av denne ikke spesifiseres her, kan et like antall trinn av de eksterne sub-transformasjonsenhetene i utførelsesform 4 eller 5 erstattes med operasjonsenheten for repitisjon eller like gjerne utførelsesform 6 eller 7.1 dette eksempelet kan antallet eksterne sub-transformasjonsenheter reduseres uten å redusere operasjonshastigheten. I dette tilfellet kan videre, når operasjonsenheten som repeteres består av et like antall eksterne sub-transformasjonsenheter, hurtige operasjoner utføres som det kan forstås av forklaringen i utførelsesform 4.
Datavelgerenheten og dataholderenheten i utførelsesform 6 eller 7 gis som et par og danner en feedback-løkke. Selv om en detaljert konfigurasjon ikke er vist i figuren, og en operasjon ikke er spesifisert her, kan denne feedback-løkken anvendes i de interne sub-transformasjonsenhetene i utførelsesf ormene 3 - 5. Det vil si at en intern datavelgerenhet er lagt inne i, eller etter de interne inndelingsenhetene 351 eller 551 i den eksterne ikke-lineære transformatoren vist i figurene 6 og 11 for å velge inngangsdata. En intern dataholderenhet er lagt inne i eller før de interne samleenhetene 352 eller 552. Feedback-løkken kan således dannes ved å inkludere denne interne datavelgerenheten og den interne dataholderenheten. Dvs. datavelgerenheten kan legges før den eksterne ikke-lineære transformatoren i Figur 13 for å velge inngangsdata. Dataholderenheten kan legges etter den eksterne ikke-lineære transformatoren. Feedbackløkken dannes ved å inkludere datavelgerenheten og dataholderenheten. På denne måten kan kretsskalaen til den interne sub-transformasjonsenheten reduseres uten å redusere operasjonshastighten.
Utførelsesform 8
I denne utførelsesformen utføres prosessen beskrevet i utførelsesform 1, som ble utført av de mange sub-transformasjonsenhetene 121 -124, ved å repetere den grunnleggende operasjonsenheten for repetisjon. I denne forklaringen av utførelsesformen består de vilkårlige A inngangsdataene 101 og B inngangsdataene 102 av samme antall datasiffer. Når A inngangsdataene 101 og B inngangsdataene 102 har samme antall datasiffer, trenger ikke alltid antallet sub-transformasjonsenheter som repeteres være et like tall. Det vilkårlige antallet trinn kan således forbindes for å danne feedbackløkken.
Figur 16 er et blokkdiagram som viser konfigurasjonen ovenfor. For å forenkle forklaringen av operasjonen inkluderer konfigurasjonen kun ett trinn av sub-transformasjonsenheten og dette danner feedbackløkken i Figur 16.
I figuren betegner 121 sub-transformasjonsenheten. Den første nøkkel-parameteren 111, den ikke-lineære transformatoren 131, den eksklusive ELLER-kretsen 141, repetisjonsenheten 154, datavelgerenhetene 156a og 156b, dataholderenhetene 157a og 157b, og nøkkelparameterleveringsenheten 158 er de samme elementene som i de andre utførelsesf ormene.
Det følgende er en operasjon av datatransformasjonsapparaturen konfigurert ovenfor.
Vilkårlige A inngangsdata 101 og B inngangsdata 102 blir sendt inn til sub-transformasjonsenheten 121 via datavelgerenhetene 156a og 156b. Operasjonen til sub-transformasjonsenheten 121 er den samme som i utførelses-form 1. Nøkkelparameteren leveres til den ikke-lineære transformatoren i sub-transformasjonsenheten av nøkkelparameterleveringsenheten 158 som i repetisjonsprosessen beskrevet under. Midlertidige A data 105 og midlertidige B data 106, sendt ut fra sub-transformasjonsenheten 121, blir sendt inn tii sub-transformasjonsenheten 121 hhv. som A inngangsdata og B inngangsdata av repetisjonsenheten 154. Deretter gjentas prosessen ovenfor til den til slutt sender ut A utgangsdataene 103 og B utgangsdataene 104.
Ved konfigurasjonen ovenfor kan antallet ikke-lineære transformatorer senkes, og størrelsen (the scale) av apparaturen kan også reduseres.
I forklaringen ovenfor av utførelsesformen inkluderer operasjonsenheten for repetisjon kun ett trinn med sub-transformasjonsenheten 121. Det er mulig at operasjonsenheten for repetisjon kan omfatte mange trinn av sub-transformasjonsenhetene forbundet i en kaskade. Operasjonshastigheten kan ikke senkes og størrelsen av apparaturen kan reduseres.
Sub-transformasjonsenheten kan således erstattes med sub-transformasjonsenheten til datatransformasjonsapparaturen spesifisert i utførelsesform 2.
Denne utførelsesformen kan videre anvendes med de interne sub-transformasjonsenhetene i utførelsesf ormene 3 - 5 så vel som utførelsesf ormene 6 og 7, selv om en detaljert konfigurasjon i dette tilfellet ikke er vist i figuren og operasjonen ikke er spesifisert her.
Utførelsesform 9
I den foreliggende utførelsesformen anvendes en liten ikke-lineær transformator på en ikke-lineær transformator i en konvensjonell sub-transformasjonsenhet. Figur 17 viser en konfigurasjon av en datatransformasjonsapparatur ifølge foreliggende utførelsesform. Figur 18 er et blokkdiagram som viser en konfigurasjon av en ekstern ikke-lineær transformator 831 (og 832 - 838) vist i Figur 17. Figur 19 er et blokkdiagram som viser en konfigurasjon av en intern ikke-lineær transformator 931 (og 932 , 933) vist i Figur 18.
I denne utførelsesformen er det antatt at nøkkelparameteren 811 har 32 x 3 = 96 bits, lengden på nøkkelparameter 811a + nøkkelparameteren 811b + nøkkelparameteren 811c er 32 bits, lengden på nøkkelparameter 811d+ nøkkel-parameteren 811e + nøkkelparameteren 811 f er 32 bits og lengden på nøkkel-parameter 811g + nøkkelparameteren 811h + nøkkelparameteren 811 i er 32 bits. Nøkkelparameteren 811a er på 16 bits, nøkkelparameteren 811b er på 7 bits og nøkkelparameteren 811c er på 9 bits.
Figurene 20 og 21 er substitusjonstabeller S7 og S9 hvor de ikke-lineære transformatorene 951, 952a og 952b vist i Figur 19 realiseres med et ROM (Read Only Memory) eller et RAM (Random Access Memory). For eksempel, i substitusjonstabellen S7, når dataene X=0 sendes inn, sendes dataene Y=85 ut. Når dataene X=1 sendes inn, sendes dataene Y=95 ut. Videre, dersom X=128 sendes inn, sendes Y=42 ut. I substitusjonstabellen S9 er operasjonen den samme som i S7. Når dataene X = 0,1, 511 sendes inn, sendes Y= 341, 310, ...,170 ut.
Substitusjonstabellen S7 er konfigurert som beskrevet under.
Dersom roten for det irredusible syvendegradspolynomet
antas å være «a», og inngangsbasisen antas å være en normalisert basis og utgangsbasisen antas å være en normal basis
uttrykkes X<17> med «inngangs X», som er elementet i GF (Galoisfeltet) (2<7>), ifølge basisen ovenfor. X<17> blir eksklusivt ELLER-behandlet med 55h (hexadesimaltall) og sendt ut. Inngangsdata og utgangsdata ovenfor er vist med desimaltall i
tabellen i Figur 20.1 denne tabellen viser venstresiden av inngangs-/utgangsdataene LSB (den minst signifikante bit).
Substitusjonstabellen S9 ovenfor er konfigurert som følger.
Dersom roten til det irredusible niendegradspolynomet
antas å være «a», og inngangsbasisen antas å være en normalisert basis og utgangsbasisen antas å være en normal basis
uttrykkes X<5> med «inngangs X», som er elementet i GF (Galoisfeltet) (2<9>), ifølge basisen ovenfor. X<5> blir eksklusivt ELLER-behandlet med 155h (hexadesimaltall) og sendt ut. Inngangsdata og utgangsdata ovenfor er vist med desimaltall i
tabellen i Figur 21.1 denne tabellen viser venstresiden av inngangsVutgangs-dataene LSB (den minst signifikante bit).
Galoisfeltet er representert med en vektor ved å anvende polynombasis eller normalbasis.
Typisk representeres vektoren ved å anvende polynombasis. Når for eksempel et primitivt element av GF(2<m>) antas å være «a», er et vilkårlig element i GF(2<m>) representert ved en vektor av polynombasiser {1, a, a<2> a<m>'<1> }.
Det er en fordel ved polynombasisen at addisjon av elementer i GF(2<m>) utføres ved addisjon (eksklusiv ELLER-operasjon) i hver bit. Det vil si at når denne operasjonen utføres av maskinvare, kan et antall «m» av eksklusive ELLER-kretser med 2 inngangsdata anvendes. Ved representasjon med vektor ved å anvende en polynombasis derimot, er det vanskelig å utføre multiplikasjon med maskinvaren sammenliknet med addisjon. Utføring av multiplikasjon er vanligvis implementert med et ROM.
Ved en annen typisk basis blir normal basis anvendt for å representere en vektor. Den normale basis er et sett som består av en rot «a», av det primitive m-tegradspolynomet og dets konjugerte elementer og er beskrevet som { a, a<2>,
m-2 m-1
a<4>a<2> , a2 }.
Det er veldig enkelt å utføre en kvadreringsoperasjon når man anvender en normal basis, hvilket er den største fordelen med å anvende en normal basis. Når et vilkårlig element i GF(2<m>) kvadreres, utføres dette ved å skifte vektor-representasjonen av det vilkårlige elementet syklisk til høyre. Dersom kvadreringsoperasjonen utføres av maskinvare, realiseres den ved kun å bytte om linjene til bitsene. Fordelen ved å representere en vektor med normal basis er at det blir mulig å utføre en X<n->krets for et vilkårlig element X med enklere maskinvare enn tilfellet er ved å representere vektoren med polynom-basis. En invers-element (X"<1>)-krets kan også antas å være en X<n->krets. Det vil si at et
m
inverst element X"<1> av et vilkårlig element X på GF(2<m>) er lik X <2> "2 , og det kan prosesseres i en X<n->krets ved å sette n = 2m - 2. Som et eksempel på maskinvaren ovenfor, er tilfellet med den sjette minst signifikante biten (ut 5) er vist i
Figur 22 når den implementeres med en logisk krets som antar at 7 inngangsbits i substitusjonstabellen S7 ovenfor er {inn 0, inn 1, inn 2, inn 3, inn 4, inn 5, inn 6 } og at 7 utgangsbits er { ut 0, ut 1, ut2, ut 3, ut 4, ut 5, ut 6}.
Operasjonen til datatransformasjonsapparaturen konfigurert som vist i figurene 17-19 kan klart forstås av beskrivelsen i de tidligere utførelsesformene, og er derfor ikke forklart i detalj her.
Utførelsesform 10
I foreliggende utførelsesform blir en datatransformasjonsapparatur forklart, i hvilken kretsskalaen er litt økt og som genererer mer robust koding.
Figur 23 viser en konfigurasjon av datatransformasjonsapparaturen i denne utførelsesformen.
Apparaturen i utførelsesformen inkluderer videre datatransformatorene FL1 - FL10 i datatransformasjonsapparaturen i utførelsesform 9.
Figur 24 viser en detaljert konfigurasjon av datatransformatoren FL1 971 (-FL10 980).
Hver av datatransformatorene FL1 - FL10 inkluderer en OG-krets 971a, en ELLER-krets 971b og eksklusive ELLER-kretser 971c og 971 d. En nøkkel-parameter KL1 består av 32 bits, som er delt inn i nøkkelparametrene KL1a og KL1b av en nøkkelparameterleveringsenhet (dette er ikke illustrert). For eksempel deles nøkkelparameteren KL1 inn i nøkkelparameteren KL1a bestående av 16 bits, og nøkkelparameteren KL1b bestående av 16 bits. I figuren kan hver av OG-kretsen 971a og ELLER-kretsen 971b være enten OGeller ELLER-kretser. Begge kan være ELLER-kretser.
Det følgende er en operasjon av datatransformasjonsapparaturen ovenfor.
Datatransformatoren 971 inkluderer to eksklusive ELLER-kretser 971c og 971 d, og den første og den andre logiske kretsen, som kan være to OG-kretser, to ELLER-kretser eller en av hver av disse. Datatransformatoren 971 legges til en eller begge av A inngangssiden og/eller B inngangssiden til den første sub-transformasjonsenheten.
A inngangsdataene (eller B inngangsdataene) deles inn i to datasegmenter AA data og BB data bestående av et vilkårlig antall bits i hver. Nøkkel-parameteren deles inn i en A transformasjons-nøkkelparameter 981a og en B transformasjons-nøkkelparameter 981 b, som hver svarer til de inndelte datasegmentene. En første OG/ELLER operasjon på AA-dataene og A transformasjons-nøkkelparameteren 981a utføres i den første logiske kretsen. Den eksklusive ELLER-kretsen 971c eksklusivt ELLER-behandler det første OG/ELLER-behandlede resultatet med AB-dataene og sender ut det første eksklusivt ELLER-behandlede resultatet. Dette første eksklusivt ELLER-behandlede resultatet sendes ut som utgangsdata etter transformasjon av AB-dataene. Den andre logiske kretsen utfører en OG/ELLER-operasjon på det første eksklusivt ELLER-behandlede resultatet og B transformasjons-nøkkel-parameteren og sender ut det andre OG/ELLER-behandlede resultatet. Den eksklusive ELLER-kretsen 971 d eksklusivt ELLER-behandler det andre OG/ELLER-behandlede resultatet og AA-dataene og sender ut det andre eksklusivt ELLER-behandlede resultatet. Dette andre eksklusivt ELLER-behandlede resultatet sendes ut som utgangsdata etter transformasjon av AA-dataene. Utgangsdataene etter transformasjon av AA-dataene og utgangsdataene etter transformasjon av AB-dataene ovenfor settes sammen igjen og sendes ut til det neste trinnet som A utgangsdata (eller B utgangsdata).
De nylig oppnådde datatransformatorene FL1 - FL 10 er lineære funksjoner, og utgangsdata fra disse varierer i henhold til verdien på nøkkel-parameteren. Disse transformatorene øker ikke den differensielle sannsynligheten og lar datatransformasjonsapparaturen bedre sin resistens mot annen kodeanalyse unntatt differensiell kodeanalyse. Operasjonen til den ikke-lineære transformasjonen er allerede forklart i tidligere utførelsesf ormer, og vil ikke bli forklart her.
Datatransformatorene FL1 - FL10 trenger ikke alltid å konfigureres som vist i Figur 23. For eksempel kan datatransformatorene FL1, FL3, FL5, FL7 og FL9 legges inn på en side av A sekvensen (venstresiden i figuren) og B sekvensen (høyresiden i figuren). Datatransformatorene kan således legges til enten den første eller den andre sub-transformasjonsenheten av paret, på en side eller begge sider av A sekvensen og/eller B sekvensen.
Utførelsesform 11
I utførelsesf ormene 9 og 10 er de ikke-lineære transformatorene, som er et grunnleggende element i datatransformasjonsapparaturen ifølge oppfinnelsen, nestet i den ikke-lineære transformatoren i den konvensjonelle sub-transformasjonsenheten. Ifølge foreliggende utførelsesform blir ikke-lineære transformatorer, som er et grunnleggende element i datatransformasjonsapparaturen ifølge oppfinnelsen, nestet i den ikke-lineære transformatoren i sub-transformasjonsenheten, som er et grunnleggende element i datatransformasjonsapparaturen ifølge foreliggende oppfinnelse. Som vist i Figur 25 er foreliggende utførelsesform en modifisert datatransformasjonsapparatur fra utførelsesform 10, i hvilken noen elementer er plassert forskjellig i apparaturen. Siden operasjonen til datatransformasjonsapparaturen er forklart i tidligere utførelsesf ormer, beskrives den ikke i detalj her. Hver plassering av datatransformatoren FL1 - FL10 trenger ikke alltid være som vist i figuren og i utførelsesform 10. Med en annen plassering kan apparaturen være like effektiv.
Figur 26 er en tabell som viser karakteristika for hver av utførelsesf ormene
Rådvis er hhv. utførelsesf ormene 1, 2, 4 og 5 vist, i kolonnene er utførelsesf ormene 3, 6, 7, 8, 9,, 10 og 11 vist som kombinasjon med hver av ut-førelsesf ormene 1, 2, 4 og 5 ovenfor. Radene til utførelsesform 1 og 2 viser hhv. egenskapene for sub-transformasjonsenhetene deres. I Figur 26 kalles sub-transformasjonsenheten i utførelsesform 1, konfigurert som vist i Figur 1, type 1. Sub-transformasjonsenheten i utførelsesform 2, konfigurert som vist i Figur 3, kalles type 2. Utførelsesform 3 har en nestet konfigurasjon av den eksterne sub-transformasjonsenheten og den interne sub-transformasjonsenheten. Sub-transformasjonsenhetene i figurene 1 og 3, uten å ha nestede konfigurasjoner, er definert som de eksterne sub-transformasjonsenhetene i Figur 26.1 Figur 26 indikerer nummer på figurer med parenteser () hvilken figur konfigurasjonen er vist i. For eksempel indikerer (Fig. 1) at sub-transformasjonsenheten type 1 er vist i Figur 1. (Fig. 6) indikerer at utførelsesform 3 er vist i Figur 6, som inkluderer den eksterne sub-transformasjonsenheten av type 1 og den interne sub-transformasjonsenheten av type 1. Mange elementer innenfor parentesene {} indikerer at et hvilket som helst av elementene eventuelt kan velges. I utførelsesform 3 er for eksempel hvilken som helst av sub-transformasjonsenhetene av type 1 og type 2 anvendbar for den interne sub-transformasjonsenheten. Det vil klart forstås fra figuren at hvilke som helst av egenskapene i utførelsesf ormene 1, 2, 4 og 5 kan kombineres med hvilke som helst av egenskapene i utførelsesf ormene 3, 6, 7, 8, 9, 10 og 10. Datatransformasjonsapparaturen ifølge foreliggende oppfinnelse kan ikke bare konfigureres ved kombinasjon av egenskapene vist i Figur 26, men kan også konfigureres ved kombinasjon av disse egenskapene med andre egenskaper, som ikke er vist i Figur 26. Datatransformasjonsapparaturen kan konfigureres ikke bare ved kombinasjon av egenskaper, men også konfigureres med hver egenskap i hver utførelsesform.
Det følgende viser eksempler på applikasjoner med datatransformasjonsapparaturen i henhold til foreliggende oppfinnelse.
Figur 27 illustrerer en pc eller en arbeidsstasjon hvor datatransformasjonsapparaturen ifølge foreliggende oppfinnelse er anvendt.
Datatransformasjonsapparaturen 60 inkluderer en skjermenhet 61, et tastatur 62, en mus 63, en musematte 64, en systemenhet 65 og en cd-spiller 100.
I datatransformasjonsapparaturen ifølge oppfinnelsen sendes for eksempel data inn fra cd-spilleren 100, data overføres til systemenheten 65 og vises på skjermenheten 61 som vist i Figur 27. Datatransformasjonsapparaturen sender på den andre side ut dataene vist på skjermenheten 61 til cd-driveren 100. Datatransformasjonsapparaturen kan også transformere data og overføre informasjon via linjer (ikke illustrert).
Anvendelsesområdet for datatransformasjonsapparaturen i oppfinnelsen er likevel ikke begrenset til pc-en eller arbeidsstasjonen vist i Figur 27. Datatransformasjonsapparaturen kan konfigureres på mange måter, for eksempel kan en videospiller inkluderes istedenfor cd-spilleren 100 som innsendingsanordning. Som et annet eksempel kan data sendes inn fra et nettverk. Data kan mottas enten analogt eller digitalt.
I Figur 27 er datatransformasjonsapparaturen ifølge oppfinnelsen vist som en uavhengig enhet. Datatransformasjonsapparaturen kan implementeres inne i enheter så som en skriver 66, en scanner 68, eller en faksenhet 69 som vist i Figur 28. Som et annet eksempel kan datatransformasjonsapparaturen ifølge oppfinnelsen implementeres som en del av en systemtavle for et tv-kamera, en målemaskin, en datamaskin, osv. Som et ytterlig eksempel på en applikasjon er utstyret vist i Figur 28 forbundet via LAN (Local Area Network) for innbyrdes å overføre den kodede informasjonen, dette er ikke illustrert i Figur 28. Den kodede informasjonen kan overføres/mottas via et WAN (Wide Area Network) så som
ISDN.
Industriell anvendelse
Som beskrevet er, i datatransformasjonsapparaturen ifølge foreliggende oppfinnelse, sub-transformasjonsenheten konfigurert for delvis å prosessere inngangsdata parallelt, noe som tillater apparaturen å ha en liten differensiell sannsynlighet, og å utføre en hurtig datatransformasjon. Datatransformasjonsapparaturen kan effektivt anvendes som en koder for informasjonsproses-seringsapparatur eller datakommunikasjon.
I datatransformasjonsapparaturen ifølge oppfinnelsen er videre en feedback-løkke gitt for å repetere operasjonen på de samme elementene i kretsen. Apparaturen, kan derfor være anvendbar som en koder med redusert kretsskala og med høy hastighet.

Claims (17)

1. Datatransformasjonsapparatur for å transformere første inngangsdata (101) og andre inngangsdata (102), karakterisert ved at den omfatter: en første transformasjonsenhet (121,161) for å utføre en første, ikke-lineær transformasjon av de første inngangsdata (101) ved bruk av en første nøkkel-parameter (111), utmate et transformert resultat, utføre en EKSKLUSIV ELLER-operasjon på det transformerte resultat og de andre inngangsdata (102) for å utmate et EKSKLUSIV ELLER-resultat som andre midlertidige data (106), og utmate de andre inngangsdata (102) som første midlertidige data (105) uten noen transformasjon, og en andre transformasjonsenhet (122,162) for å utføre en andre, ikke-lineær transformasjon av de første midlertidige data (105) ved bruk av en andre nøkkelparameter (112), utmate et transformert resultat, utføre en EKSKLUSIV ELLER-operasjon på det transformerte resultat og de andre midlertidige data (106) for å utmate et EKSKLUSIV ELLER-resultat som fjerde midlertidige data (108), og utmate de andre midlertidige data (106) som tredje midlertidige data (107) uten noen transformasjon.
2. Datatransformasjonsapparatur ifølge krav 1, karakterisert ved at den første transformasjonsenheten (121) innbefatter en første, ikke-lineær transformator (131) og en EKSKLUSIV ELLER-krets (141) som befinner seg mellom en inngang for de første inngangsdata (101) og en inngang på den andre transformasjonsenheten (122) for de andre midlertidige data (106); og hvor den andre transformasjonsenheten (122) innebefatter en andre ikke-lineær transformator (132) og en EKSKLUSIV ELLER-krets (142) som befinner seg mellom en inngang for de første midlertidige data (105) og en inngang på en neste transformasjonsenhet (123) for de fjerde midlertidige data (108); eller at den første transformasjonsenheten (161) innbefatter en EKSKLUSIV ELLER-krets (141) som befinner seg mellom en inngang for de andre inngangsdata (102) og en inngang på den andre transformasjonsenheten (162) for de første midlertidige data (105), og en første, ikke-lineær transformator (132) som befinner seg mellom en inngang for de første inngangsdata (101) og en inngang på den andre transformasjonsenheten (162) for de andre midlertidige data (106), og hvor den andre transformasjonsenheten (162) innbefatter EKSKLUSIV ELLER-kretsen (142) som befinner seg mellom inngangen for de andre midlertidige data (106) og en inngang på en neste transformasjonsenhet (163) for de tredje midlertidige data (107), og en andre, ikke-lineær transformator (133) som befinner seg mellom en inngang for de første midlertidige data (105) og en inngang på den neste transformasjonsenheten (163) for de fjerde midlertidige data (108); hvor den første transformasjonsenheten (121,161) og den andre transformasjonsenheten (122, 162) blir vekselvis koblet d ganger (d>2) fra et første trinn til et siste trinn, og hvor det siste trinnets transformasjonsenhet, som er den første transformasjonsenheten eller den andre transformasjonsenheten, utmater oddetalls midlertidige data (103) og liketalls midlertidige data (104) som utgangsdata etter transformasjon.
3. Datatransformasjonsapparatur ifølge krav 2, karakterisert ved at de første inngangsdata (101), innmatet til den første transformasjonsenheten (221), blir delt i første inngangs-subdata (301) og andre inngangs-subdata (302), og nøkkelparameteren (111) blir delt i første til n-te oppdelte nøkkelparametere (311-313); og at datatransformasjonsapparaturen videre omfatter: en første sub-transformasjonsenhet (321), for å utføre en ikke-lineær transformasjon av de første inngangs-subdata (301), ved bruk av en første delt nøkkelparameter (311), utmate et transformert resultat, utføre en EKSKLUSIV ELLER-operasjon på det transformerte resultat og de andre inngangs-subdata (302), utmate et EKSKLUSIV ELLER-resultat som andre midlertidige subdata (306), og utmate de andre inngangs-subdata (302) som første midlertidige subdata (305) uten noen transformasjon; og en andre sub-transformasjonsenhet (322), for å utføre en indre ikke-iineær transformasjon av de første midlertidige sub-data (305), ved bruk av den andre, delte nøkkelparameter (312), utmate et transformert resultatet, kjøre en EKSKLUSIV ELLER på det transformerte resultatet og de andre midlertidige sub-data (306), utmate et EKSKLUSIV ELLER-resultat som fjerde midlertidige sub-data (308), og utmate de andre midlertidige sub-data (306) som tredje midlertidige sub-data (307) uten noen transformasjon; hvor den første sub-transformasjonsenheten (321) og den andre sub-transformasjonsenheten (322) blir vekselvis koblet n ganger (n>2) fra et første trinn til et siste trinn, og hvor oddetalls midlertidige data (303) og liketalls midlertidige data (304), utmatet fra det siste trinnet, slås sammen som et transformasjonsresultat (109).
4. Datatransformasjonsapparatur ifølge krav 2, karakterisert ved at de første inngangsdata (101), innmatet til den første transformasjonsenheten (221), blir delt i første inngangs-subdata (301) og andre inngangs-subdata (302), og nøkkelparameteren (111) blir delt i første til n-te delte nøkkelparametere; og hvor datatransformasjonsapparaturen videre omfatter: en første sub-transformasjonsenhet for å utføre en indre ikke-lineær transformasjon av de første inngangs-subdata, ved bruk av en første delt nøkkelparameter, utmate et transformert resultatet som andre midlertidige sub-data, kjøre en EKSKLUSIV ELLER på de første inngangs-subdata og de andre inngangs-subdata, og utmate et EKSKLUSIV ELLER-resultat som første midlertidige sub-data; og en andre sub-transformasjonsenhet for å utføre en indre ikke-lineær transformasjon på de første midlertidige sub-data, utmatet fra den første sub-transformasjonsenhet ved bruk av den andre delte nøkkelparameter, utmate et transformert resultat som fjerde midlertidige sub-data, kjøre en EKSKLUSIV ELLER på de første midlertidige sub-data og de andre midlertidige sub-data, og utmate et EKSKLUSIV ELLER-resultat som tredje midlertidige data; hvor den første sub-transformasjonsenheten og den andre sub-transformasjonsenheten blir vekselvis koblet n ganger (n>2) fra et første trinn til et siste trinn, og hvor oddetalls midlertidige data og liketalls midlertidige data som utmates fra det siste trinnet, slås sammen som et transformasjonsresultat.
5. Datatransformasjonsapparatur ifølge krav 1, karakterisert ved at de første inngangsdata (101) og de andre inngangsdata (102), oddetalls midlertidige data (105,107,109) og liketalls midlertidige data (106,108,104) deles henholdsvis i datastykker slik at hver av de oppdelte data har samme antall sifre både i oddetalls- og liketallsdata.
6. Datatransformasjonsapparatur ifølge krav 1, karakterisert ved at den første transformasjonsenheten (121) innbefatter en første ikke-lineær transformator (131) og en EKSKLUSIV ELLER-krets (141) som befinner seg mellom en inngang for de første inngangsdata (101) og en inngang på den andre transformasjonsenheten (122) for de andre midlertidige data (106); og hvor den andre transformasjonsenheten (122) innbefatter en andre ikke-lineær transformator (132) og en EKSKLUSIV ELLER-krets (142) som befinner seg mellom en inngang for de første midlertidige data (105) og en inngang på en neste transformasjonsenhet (123) for de fjerde midlertidige data (108); eller at den første transformasjonsenheten (161) innbefatter EKSKLUSIV ELLER-kretsen (141) plassert mellom en inngang for de andre inngangsdata (102) og en inngang på den andre transformasjonsenheten (162) for de første midlertidige data (105), og en første ikke-lineær transformator (132) plassert mellom en inngang for de første inngangsdata (101) og en inngang på den andre transformasjonsenheten (162) for de andre midlertidige data (106); og hvor den andre transformasjonsenheten (162) innbefatter EKSKLUSIV ELLER-kretsen (142) plassert mellom inngangen for de andre midlertidige data (106) og en inngang på en neste transformasjonsenhet (163) for de tredje midlertidige data (107), og en andre ikke-lineær transformator (133) som befinner seg mellom en inngang for de første midlertidige data (105) og en inngang på den neste transformasjonsenheten (163) for de fjerde midlertidige data (108); og hvor den første transformasjonsenheten (121,161) og den andre transformasjonsenheten (122,162) blir vekselvis koblet d ganger (d>2) fra et første trinn til et siste trinn, og datatransformasjonsapparaturen omfatter videre: en datavelgerenhet (156a, 156b) koblet til den første transformasjonsen-hetens (121,161) inngangsside, en dataholderenhet (157a, 157b) koblet til den andre transformasjonsen-hetens (122,162) utgangsside, og en nøkkelparameter-leveringsenhet (158); hvor datavelgerenheten (156a, 156b) er innrettet for først å velge første inngangsdata (101) og andre inngangsdata (102) for å innmate disse i den første transformasjonsenheten (121, 161), og deretter er datavelgerenheten (156a, 156b) er innrettet for deretter å velge utgangsdata fra dataholderenheten (157a, 157b) for å innmate disse i den første transformasjonsenheten (121,161) for slik å danne en tilbakekoblingssløyfe; hvor denne datatransformasjonssyklusen gjentas m ganger (m>2) og dataholderenheten (157a og 157b) er innrettet for etter dette å utmate oddetalls midlertidige data (103) og liketalls midlertidige data (104) som et transformasjonsresultat.
7. Datatransformasjonsapparatur ifølge krav 1, for å transformere første inngangsdata (101) og andre inngangsdata (102) som begge har samme antall sifre, karakterisert ved at apparaturen omfatter en av: en første transformasjonsenhet (121) som innbefatter en første, ikke-lineær transformator (131) og en første EKSKLUSIV ELLER-krets (141) og en andre transformasjonsenhet (122) som innbefatter en første EKSKLUSIV ELLER-krets (142) og en andre ikke-lineær transformator (132); hvor transformasjonsenhetene er koblet d ganger (d>2), og hvor datatransformasjonsapparaturen videre omfatter: en datavelgerenhet (156a, 156b) anbragt på inngangssiden av en første transformasjonsenhet (121), en dataholderenhet (157a, 157b) anbragt på utgangssiden av en siste transformasjonsenhet (122), og en nøkkelparameter-leveringsenhet (158); hvor datavelgerenheten (156a, 156b) er innrettet for først å velge de første inngangsdata (101) og de andre inngangsdata (102) for innmating i den første transformasjonsenheten (121), og datavelgerenheten (156a, 156b) er innrettet for etter dette å velge utgangsdata fra dataholderenheten (157a, 157b) for innmating i den første transformasjonsenheten (121), slik at det dannes en tilbakekoblings-sløyfe; og hvor denne datatransformasjonssyklusen gjentas m ganger (m>2) og dataholderenheten (157a, 157b) er innrettet for etter dette å utmate oddetalls midlertidige data (103) og liketalls midlertidige data (104) som et transformasjonsresultat.
8. Datatransformasjonsapparatur ifølge krav 2, karakterisert ved at de første inngangsdata (101) blir delt i første inngangs-subdata (301) og andre inngangs-subdata (302), og nøkkelparameteren (111) blir delt i første til n-te delte nøkkelparametere (311-313); hvor transformasjonsenheten videre innbefatter: en første sub-transformasjonsenhet (321) for å utføre en ikke-lineær transformasjon av de første inngangs-subdata (301), ved bruk av den første delte nøkkelparameteren (311), utmate et transformert resultat, kjøre en EKSKLUSIV ELLER på det transformerte resultatet og de andre inngangs-subdata (302) for å utmate et EKSKLUSIV ELLER-resultat som andre midlertidige sub-data (306) og utmate de andre inngangs-subdata (302) som første midlertidige sub-data (305) uten noen transformasjon; og en andre sub-transformasjonsenhet (322) for å innmate de første midlertidige sub-data (305) utmatet fra den første sub-transformasjonsenheten, utføre en indre ikke-lineær transformasjon på de første midlertidige sub-data (305) ved bruk av den andre delte nøkkelparameter (312), utmate et transformert resultat, kjøre en EKSKLUSIV ELLER på det transformerte resultatet og de andre midlertidige sub-data (306) for å utmate et EKSKLUSIV ELLER-resultat som fjerde midlertidige sub-data (308) og utmate de andre midlertidige sub-data (306) som tredje midlertidige sub-data (307) uten noen transformasjon; hvor den første sub-transformasjonsenheten (321) og den andre sub-transformasjonsenheten (322) blir vekselvis koblet n ganger (n>2) fra et første trinn til et siste trinn, og hvor transformasjonsenheten videre innbefatter: en sub-datavelgerenhet anbragt på den første sub-transformasjonsen-hetens inngangsside, en sub-dataholderenhet anbragt på utgangssiden av en av de første og andre sub-transformasjonsenhetene, og en sub-nøkkelparameter-leveringsenhet; hvor sub-datavelgerenheten er innrettet for først å velge og innmate de første inngangs-subdata og de andre inngangs-subdata, og etter valg og innmating av de første inngangs-subdata og de inngangs-subdata, er sub-datavelgerenheten innrettet for å velge og innmate utgangsdata fra sub-dataholderenheten slik at det dannes en tilbakekoblingssløyfe; og hvor transformasjonsenheten er innrettet for å repetere transformasjonen av data m ganger (m>2), sub-nøkkelparameterleveringsenheten er innrettet for å levere den delte nøkkelparameteren til hver sub-transformasjonsenhet tilsvarende gjentatt transformasjon, og til slutt er sub-dataholderenheten innrettet for å utmate oddetalls midlertidige sub-data og liketalls midlertidige sub-data som første utgangsdata etter transformasjon.
9. Datatransformasjonsapparatur ifølge krav 2, karakterisert ved at de første inngangsdata (101) blir delt i første inngangs-subdata (301) og andre inngangs-subdata (302) og nøkkelparameteren (111) blir delt i første til n-te delte nøkkelparametere (311-313); og at transformasjonsenheten videre innbefatter: en første sub-transformasjonsenhet (321) for å innmate første inngangs-subdata (301), utføre en ikke-lineær transformasjon av de første inngangs-subdata (301) ved bruk av den første delte nøkkelparameteren (311), utmate et transformert resultat som andre midlertidige sub-data, kjøre en EKSKLUSIV ELLER på de første inngangs-subdata og de andre inngangs-subdata for å utmate et EKSKLUSIV ELLER-resultat som første midlertidige sub-data; og en andre sub-transformasjonsenhet for å innmate de første midlertidige sub-data utmatet fra den første sub-transformasjonsenheten, utføre en ikke-lineær transformasjon på de første midlertidige sub-data ved bruk av den andre delte nøkkelparameteren, utmate et transformert resultat som fjerde midlertidige sub-data, kjøre en EKSKLUSIV ELLER på de første midlertidige sub-data og de andre midlertidige data og utmate et EKSKLUSIV ELLER-resultat som tredje midlertidige sub-data; hvor den første sub-transformasjonsenheten og den andre sub-transformasjonsenheten blir forbundet vekselvis n ganger (n>2) fra et første trinn til et siste trinn, hvor sub-transformasjonsenheten videre innbefatter: en sub-datavelgerenhet anbragt på inngangssiden av den første sub-transformasjonsenheten, en sub-dataholderenhet anbragt på utgangssiden av en av de første og andre sub-transformasjonsenhetene, og en sub-nøkkelparameter-leveringsenhet; hvor sub-datavelgerenheten er innrettet for først å velge og innmate de første inngangs-subdata og de andre inngangs-subdata, og etter valg og innmating av de første inngangs-subdata og de andre inngangs-subdata er sub-datavelgerenheten innrettet for å velge og innmate utgangsdata fra sub-dataholderenheten slik at det dannes en tilbakekoblingssløyfe; og hvor transformasjonsenheten er innrettet for å gjenta transformasjonen av data m ganger (m>2), hvor sub-nøkkelparameterleveringsenheten er innrettet for å levere den delte nøkkelparameteren til hver sub-transformasjonsenhet tilsvarende gjentatt transformasjon, og til slutt er sub-dataholderenheten innrettet for å utmate oddetalls midlertidige data og liketalls midlertidige data som første utgangsdata etter transformasjon.
10. Datatransformasjonsapparatur ifølge krav 8 eller 9, karakterisert ved at oddetallsdata som skal innmates i hver sub-transformasjonsenhet, blir delt i to datastykker, hvor begge har likt antall sifre; og hvor de første sub-transformasjonsenhetene blir koblet n ganger (n>2).
11. Datatransformasjonsapparatur ifølge krav 1, karakterisert ved at minst én av de ikke-lineære transformatorene er en X<n->krets på et Galois-felt.
12. Datatransformasjonsapparatur ifølge krav 11, karakterisert ved at X<n->kretsen på Galois-feltet er dannet fra en normal basis.
13. Datatransformasjonsapparatur ifølge krav 1, karakterisert ved at minst én del av den ikke-lineære transformatoren er et ROM-minne.
14. Datatransformasjonsapparatur ifølge krav 1, karakterisert ved at minst én del av den ikke-lineære transformatoren er et RAM-minne.
15. Datatransformasjonsapparatur ifølge krav 1, karakterisert ved at minst én del av den ikke-lineære transformatoren er en logisk krets.
16. Datatransformasjonsapparatur ifølge krav 2, karakterisert ved at den videre omfatter: to logiske kretser (971a og 971 b), som er hvilke som helst av to EKSKLUSIV ELLER-kretser (971c og 971 d) og OG-kretser og ELLER-kretser, anbragt på minst én av den første inngangssiden og den andre inngangssiden på den første transformasjonsenheten som en datatransformator (971), hvor inngangsdataene, innmatet til datatransformatoren (971), blir delt i to datastykker med et forhåndsbestemt antall sifre som første sub-data og andre sub-data, nøkkelparameteren blir delt i en første transformasjons-nøkkelparameter (981a) og en andre transformasjons-nøkkelparameter (981b); hvor en første logisk operasjon på de første sub-data utføres med bruk av den første transformasjons-nøkkelparameteren (981a), det første operasjonsresultatet blir EKSKLUSIV ELLER-behandlet med de andre sub-data for å utmate et første EKSKLUSIV ELLER-resultat, og det første EKSKLUSIV ELLER-resultatet blir utmatet som utgangsdata etter transformasjon av de andre sub-data; og hvor en andre logisk operasjon på det første EKSKLUSIV ELLER-resultatet utføres med bruk av den andre transformasjons-nøkkelparameteren, og det andre operasjonsresultatet blir EKSKLUSIV ELLER-behandlet med de første sub-data for å utmate et andre EKSKLUSIV ELLER-resultat, hvor det andre EKSKLUSIV ELLER-resultat utmates som utgangsdata etter transformasjon av de første sub-data, og utgangsdataene etter transformasjon av de første sub-data og utgangsdataene etter transformasjon av de andre sub-dataene blir forenet og utmatet.
17. Fremgangsmåte for datatransformasjon av første inngangsdata (101) og andre inngangsdata (102), karakterisert ved de følgende trinn: a) utførelse av en første, ikke-lineær transformasjon av de første inngangsdata (101) ved bruk av en første nøkkelparameter (111), utmating av et transformert resultat, utførelse av en EKSKLUSIV ELLER-operasjon på det transformerte resultatet og de andre inngangsdata (102) for å utmate et EKSKLUSIV ELLER-resultat som andre midlertidige data (106), og utmating av de andre inngangsdata (102) som første midlertidige data (105) uten noen transformasjon, og b) utførelse av en andre, ikke-lineær transformasjon av de første midlertidige data (105) ved bruk av en andre nøkkelparameter (112), utmating av et transformert resultat, utførelse av en EKSKLUSIV ELLER-operasjon på det transformerte resultatet og de andre midlertidige data (106) for å utmate et EKSKLUSIV ELLER-resultat som fjerde midlertidige data (108), og utmating av de andre midlertidige data (106) som tredje midlertidige data (107) uten noen transformasjon.
NO19972052A 1995-09-05 1997-05-02 Apparat og fremgangsmate for transformasjon av data NO324428B1 (no)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP22768595 1995-09-05
JP1107396 1996-01-25
PCT/JP1996/002154 WO1997009705A1 (fr) 1995-09-05 1996-07-31 Appareil de conversion de donnees et procede de conversion de donnees

Publications (3)

Publication Number Publication Date
NO972052D0 NO972052D0 (no) 1997-05-02
NO972052L NO972052L (no) 1997-05-05
NO324428B1 true NO324428B1 (no) 2007-10-15

Family

ID=26346455

Family Applications (1)

Application Number Title Priority Date Filing Date
NO19972052A NO324428B1 (no) 1995-09-05 1997-05-02 Apparat og fremgangsmate for transformasjon av data

Country Status (10)

Country Link
US (3) US6201869B1 (no)
EP (1) EP0790595B1 (no)
KR (1) KR100250803B1 (no)
CN (2) CN100435505C (no)
AU (1) AU693719B2 (no)
DE (1) DE69635651T2 (no)
DK (1) DK0790595T3 (no)
ES (1) ES2255712T3 (no)
NO (1) NO324428B1 (no)
WO (1) WO1997009705A1 (no)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100250803B1 (ko) * 1995-09-05 2000-04-01 다니구찌 이찌로오 데이타 변환장치 및 데이타 변환방법
JP3088337B2 (ja) * 1997-05-30 2000-09-18 三菱電機株式会社 暗号処理装置、icカード及び暗号処理方法
US6088800A (en) * 1998-02-27 2000-07-11 Mosaid Technologies, Incorporated Encryption processor with shared memory interconnect
JP2000124813A (ja) 1998-10-20 2000-04-28 Texas Instr Japan Ltd リードソロモン符号化装置およびその方法とリードソロモン復号装置およびその方法
MY131509A (en) * 1999-03-15 2007-08-30 Sony Corp Data processing method, apparatus and system for encrypted- data transfer
JP3499810B2 (ja) 2000-03-06 2004-02-23 株式会社東芝 暗号化装置、暗号化方法及び暗号化装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読取り可能な記録媒体並びに復号装置、復号方法及び復号装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読取り可能な記録媒体
DK1193665T3 (da) * 2000-03-09 2012-04-02 Mitsubishi Electric Corp Blokkrypteringsindretning, som anvender hjælpekonvertering
US7283628B2 (en) * 2001-11-30 2007-10-16 Analog Devices, Inc. Programmable data encryption engine
US7269615B2 (en) 2001-12-18 2007-09-11 Analog Devices, Inc. Reconfigurable input Galois field linear transformer system
US7508937B2 (en) * 2001-12-18 2009-03-24 Analog Devices, Inc. Programmable data encryption engine for advanced encryption standard algorithm
KR100446533B1 (ko) * 2002-10-08 2004-09-01 삼성전자주식회사 무선 통신 시스템에서 암호화 장치 및 방법
KR100456599B1 (ko) * 2002-11-12 2004-11-09 삼성전자주식회사 병렬 디이에스 구조를 갖는 암호 장치
US7310421B2 (en) * 2003-10-06 2007-12-18 National Institute Of Information And Communications Technology Particular plaintext detector
US7433469B2 (en) * 2004-04-27 2008-10-07 Intel Corporation Apparatus and method for implementing the KASUMI ciphering process
FR2871969B1 (fr) * 2004-06-18 2006-12-01 Sagem Procede et dispositif d'execution d'un calcul cryptographique
KR101298588B1 (ko) * 2005-05-04 2013-08-22 지멘스 엔터프라이즈 커뮤니케이션즈 게엠베하 운트 코. 카게 정정 심볼들에 할당된 색인들을 결정하기 위한 방법 및 장치
FR2878390A1 (fr) * 2005-11-24 2006-05-26 Samsung Electronics Co Ltd Systeme et procede cryptographiques pour chiffrer des donnees d'entree
WO2007105709A1 (ja) * 2006-03-14 2007-09-20 Nec Corporation 情報処理システム、情報処理方法および情報処理プログラム
JP2007299088A (ja) * 2006-04-28 2007-11-15 Fujitsu Ltd データ保護システム、方法及びプログラム
JP4882598B2 (ja) * 2006-07-28 2012-02-22 ソニー株式会社 暗号処理装置、暗号処理アルゴリズム構築方法、および暗号処理方法、並びにコンピュータ・プログラム
US7620792B2 (en) * 2006-08-21 2009-11-17 Sigmatel, Inc. Processing system, memory and methods for use therewith
JP2008172617A (ja) * 2007-01-12 2008-07-24 Fujitsu Ltd 符号化装置、復号装置、符号化プログラム、復号プログラム、データ転送システム
JP2008270870A (ja) * 2007-04-16 2008-11-06 Sony Corp 通信システム、通信装置及び通信方法、並びにコンピュータ・プログラム
US20100027781A1 (en) * 2007-12-20 2010-02-04 Galbi Duane E Method and apparatus for enhancing performance of data encryption standard (des) encryption/decryption
JP5272417B2 (ja) * 2008-01-21 2013-08-28 ソニー株式会社 データ変換装置、およびデータ変換方法、並びにコンピュータ・プログラム
JP5200949B2 (ja) 2009-01-16 2013-06-05 富士通株式会社 暗号処理装置
WO2011052587A1 (ja) 2009-10-27 2011-05-05 日本電気株式会社 ブロック暗号装置、ブロック暗号化方法およびプログラム
US8266181B2 (en) 2010-05-27 2012-09-11 International Business Machines Corporation Key-break and record-loop processing in parallel data transformation
US20120079462A1 (en) * 2010-09-24 2012-03-29 SoftKrypt LLC Systems and methods of source software code obfuscation
JP5682527B2 (ja) * 2011-03-28 2015-03-11 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにプログラム
JP5682526B2 (ja) * 2011-03-28 2015-03-11 ソニー株式会社 データ処理装置、およびデータ処理方法、並びにプログラム
JP2018182429A (ja) * 2017-04-06 2018-11-15 株式会社村田製作所 データ変換装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6037586A (ja) 1983-08-09 1985-02-26 富士通株式会社 Des暗号装置鍵誤り検出方式
JPS61117940A (ja) 1984-11-13 1986-06-05 Hitachi Ltd デ−タ保護方式
JPH0727325B2 (ja) * 1987-02-13 1995-03-29 沖電気工業株式会社 暗号化装置
JP2760799B2 (ja) 1988-04-28 1998-06-04 株式会社日立製作所 暗号方式
JP2825205B2 (ja) 1989-07-20 1998-11-18 日本電信電話株式会社 暗号装置
JP3053106B2 (ja) 1990-11-02 2000-06-19 株式会社日立製作所 暗号化処理装置、及び復号化処理装置
JP2862030B2 (ja) 1991-06-13 1999-02-24 三菱電機株式会社 暗号化方式
JPH0535448A (ja) 1991-07-26 1993-02-12 Matsushita Electric Ind Co Ltd 有限体における乗算器
JPH0588849A (ja) 1991-09-26 1993-04-09 Matsushita Electric Ind Co Ltd 正規基底を用いた乗算器の構成法
JP3180836B2 (ja) 1992-05-21 2001-06-25 日本電気株式会社 暗号通信装置
US5317638A (en) 1992-07-17 1994-05-31 International Business Machines Corporation Performance enhancement for ANSI X3.92 data encryption algorithm standard
US5398284A (en) * 1993-11-05 1995-03-14 United Technologies Automotive, Inc. Cryptographic encoding process
JPH07191603A (ja) 1993-12-24 1995-07-28 Canon Inc 暗号装置及びこれを用いた秘匿・認証通信システム
JP3029381B2 (ja) * 1994-01-10 2000-04-04 富士通株式会社 データ変換装置
US6125182A (en) * 1994-11-09 2000-09-26 Channel One Communications, Inc. Cryptographic engine using logic and base conversions
US5717760A (en) * 1994-11-09 1998-02-10 Channel One Communications, Inc. Message protection system and method
JPH08179690A (ja) 1994-12-22 1996-07-12 Nec Corp プロダクト暗号装置
JP3129384B2 (ja) 1995-02-08 2001-01-29 日亜化学工業株式会社 窒化物半導体レーザ素子
US5757915A (en) * 1995-08-25 1998-05-26 Intel Corporation Parameterized hash functions for access control
KR100250803B1 (ko) * 1995-09-05 2000-04-01 다니구찌 이찌로오 데이타 변환장치 및 데이타 변환방법
JPH0990870A (ja) 1995-09-27 1997-04-04 Nec Corp 基本変換方法、暗号化方法、基本変換回路および暗号装置

Also Published As

Publication number Publication date
CN1496048A (zh) 2004-05-12
WO1997009705A1 (fr) 1997-03-13
EP0790595A4 (en) 2003-10-15
AU6629396A (en) 1997-03-27
KR100250803B1 (ko) 2000-04-01
US20020131589A1 (en) 2002-09-19
DK0790595T3 (da) 2006-05-08
NO972052D0 (no) 1997-05-02
US20010000708A1 (en) 2001-05-03
CN1164912A (zh) 1997-11-12
US7096369B2 (en) 2006-08-22
CN1136692C (zh) 2004-01-28
US6415030B2 (en) 2002-07-02
NO972052L (no) 1997-05-05
AU693719B2 (en) 1998-07-02
EP0790595B1 (en) 2005-12-28
ES2255712T3 (es) 2006-07-01
DE69635651D1 (de) 2006-02-02
DE69635651T2 (de) 2006-09-07
US6201869B1 (en) 2001-03-13
EP0790595A1 (en) 1997-08-20
CN100435505C (zh) 2008-11-19
KR970707525A (ko) 1997-12-01

Similar Documents

Publication Publication Date Title
NO324428B1 (no) Apparat og fremgangsmate for transformasjon av data
Brown et al. Improving resistance to differential cryptanalysis and the redesign of LOKI
KR100435052B1 (ko) 암호화장치
Massey SAFER K-64: A byte-oriented block-ciphering algorithm
US6415032B1 (en) Encryption technique using stream cipher and block cipher
US5799089A (en) System and apparatus for blockwise encryption/decryption of data
EP0618701B1 (en) Hardware arrangement for enciphering bit blocks while renewing a key at each iteration
US8787563B2 (en) Data converter, data conversion method and program
EP2197144A1 (en) Methods and devices for a chained encryption mode
US20080056490A1 (en) Encryption Processing Apparatus, Encryption Processing Method, and Computer Program
JP2005527150A (ja) ブロックサイファの実施におけるs−ボックス暗号化
JPH0863097A (ja) データを暗号化するための対称暗号化方法およびシステム
GB2285562A (en) Transformation pattern generating device and encryption function device
Knudsen et al. Truncated differentials and Skipjack
EP1302022A2 (en) Authentication method and schemes for data integrity protection
Masoodi et al. Symmetric algorithms I
US6108421A (en) Method and apparatus for data encryption
CN102713994A (zh) 加密装置、加密方法以及程序
KR100350207B1 (ko) 디지털 데이터의 엘-비트 입력 블록들을 엘-비트 출력비트들로 암호 변환하는 방법
Ferguson et al. Cryptanalysis of Akelarre
KR100416971B1 (ko) 암호시스템에 사용하기 위한 랜덤 키스트림 생성 장치 및방법
JPH10303883A (ja) 暗号化方法
KR100380638B1 (ko) 병렬 Feistel 구조를 가진 데이터 암호 표준화시스템
CA2203380C (en) Data transformation apparatus and data transformation method
JPH10303884A (ja) 暗号化方法

Legal Events

Date Code Title Description
MK1K Patent expired