NO177548B - System for bestemmelse av en programvares riktighet i et databehandlingsapparat - Google Patents

System for bestemmelse av en programvares riktighet i et databehandlingsapparat Download PDF

Info

Publication number
NO177548B
NO177548B NO862523A NO862523A NO177548B NO 177548 B NO177548 B NO 177548B NO 862523 A NO862523 A NO 862523A NO 862523 A NO862523 A NO 862523A NO 177548 B NO177548 B NO 177548B
Authority
NO
Norway
Prior art keywords
unit
circuit
authentication
circuits
main
Prior art date
Application number
NO862523A
Other languages
English (en)
Other versions
NO862523L (no
NO177548C (no
NO862523D0 (no
Inventor
Katsuya Nakagawa
Original Assignee
Nintendo Co Ltd
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
Priority claimed from JP60138699A external-priority patent/JPS61296433A/ja
Priority claimed from JP60143026A external-priority patent/JPH0760412B2/ja
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Publication of NO862523D0 publication Critical patent/NO862523D0/no
Publication of NO862523L publication Critical patent/NO862523L/no
Publication of NO177548B publication Critical patent/NO177548B/no
Publication of NO177548C publication Critical patent/NO177548C/no

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/95Storage media specially adapted for storing game information, e.g. video game cartridges
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/73Authorising game programs or game devices, e.g. checking authenticity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K5/00Casings, cabinets or drawers for electric apparatus
    • H05K5/02Details
    • H05K5/0256Details of interchangeable modules or receptacles therefor, e.g. cartridge mechanisms
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/201Playing authorisation given at platform level
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/206Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2109Game systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2121Chip on media, e.g. a disk or tape with a chip embedded in its case

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Technology Law (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)

Description

Den foreliggende oppfinnelse angår et system for å fastlegge autentiteten av dataprogrammer, dvs. bestemmelse av en programvares riktighet i et databehandlings- eller EDB-apparat. Nærmere bestemt er oppfinnelsen rettet på et system for bestemmelse av riktigheten av data lagret i et eksternt lager, f.eks. i en ROM-kassett, en diskettstasjon e.l. og som er tilknyttet EDB-apparatet i forbindelse med en hovedenhet.
Fra den kjente teknikk skal vises til publikasjonen: L. LETHAM et al. "Software security is provided by an EPROM that performs an authentication handshake", IEEE CONFERENCE PROCEED-INGS, Arizona 1985, pp 122 - 126. Denne publikasjon beskriver et system for bestemmelse av et EDB-programs riktighet i et databehandlingsapparat som omfatter en hovedenhet og et eksternt lager tilkoplet denne. Systemet omfatter to EPROM-enheter hvorav det ene befinner seg i hovedenheten, mens det andre ligger i det eksterne lager. Disse enheter utfører programmerte algoritmer for bestemmelse av riktigheten av data i det eksterne lager.
Et annet eksempel på liknende EDB-apparater er et hvor en ROM-kassett står i forbindelse med en hovedenhet som på sin side er tilkoplet en fjernsynsmottaker i den hensikt at særlig forskjellige spill kan utføres på apparatet ved at man benytter fjernsynsskjermen som dataskjerm. Et eksempel på et slikt apparat er videospillapparatet "Nintendo Entertainment System", produsert og markedsført av Nintendo Co. Ltd., Japan.
Et stort antall programmer (ROM-kasetter) som kan anvendes i slike EDB-apparater finnes på markedet i dag. Imidlertid kan programvaren være utsatt for kopiering eller inngrep fra uvedkommende, og utviklerne av utmerkede programmer vil i så fall lide under dette.
Den kjente teknikk slik den representeres av den først omtalte publikasjon har imidlertid enkelte ulemper som denne oppfinnelse har som mål å unngå. Særlig gjelder ulempen at det kjente system bruker hovedprosessorenheten til overvåking og styring av datastrømmen mellom EPROM-kretsene, idet dette kan sammenliknes med at en person prøver en nøkkel i en lås. Et program for å bestemme riktighet, her også kalt autentiseringsprogram blir av det kjente systems mikroprosessor gjennomløpt sammen med systemets hovedprogram i et eksternt lager. Under systemets startrutine (den såkalte "handshake"-rutine) skjer altså en overføring av styringen fra systemets sentrale prosessorenhet (CPU) og til dets lagerkretser. Det er følgelig prosessorenheten som i dette system bestemmer hvilken av EPROM-kretsene som skal tjene som "giver" og hvilken som skal tjene som "mottaker" (side 123, spalte 1, linje 19 - 21). Prosessorenheten overfører vilkårlige tall og dekodede tilsvarende tall mellom lagerkretsene og kan registrere hver EPROM-krets<1> tilstand ved vilkårlig tidspunkt. Styringen overføres for første gang til en kassett etter at den andre halvdel av oppstartingsrutinen er gjennomløpt. Prosessorenheten kan derfor ifølge dette system ikke betraktes å bli tilbakestilt eller sperret under selve oppstartingsrutinen, hvilket har vist seg å være fordelaktig. Som det vil fremgå av den senere del av beskrivelsen av oppfinnelsens system er dette altså videreført ved at to samvirkende (interaktive) prosessorenheter er tatt i bruk, hvilket kan sammenliknes med at to personer gjenkjenner hverandre innbyrdes før kommunikasjon startes, i motsetning til det enklere systemkonsept som tilsvarer at bare den ene person prøver en nøkkel i en lås.
Oppfinnelsen er videre en videreføring av det video-spillapparat som Nintendo selv har utviklet, ved at programvaren sikres overfor kopiering og inngrep fra uvedkommende ved at systemet selv kan autentisere eller bestemme riktigheten av de enkelte programmer.
Hovedmålet med oppfinnelsen er således å skaffe til veie et system som er i stand til å fastlegge autentiteten av dataprogrammer slik at ikke-autentiserte programmer vil avvises, og nærmere bestemt gjelder oppfinnelsen et system av den type som fremgår av innledningen av det etterfølgende patentkrav 1.
Et EDB-apparat hvor dette system kan anvendes, består av en hovedenhet og et eksternt lager tilkoblet denne hovedenhet, og hvor det eksterne lager omfatter et program (en programvare) for styring av hovedenheten. Det eksterne lager omfatter videre en aktiv enhet for bestemmelse av riktigheten av programvaren, og denne aktive enhet virker da som en nøkkelenhet. Nok en aktiv enhet er anordnet i hovedenheten, og denne aktive enhet virker som en låseenhet. Ved samvirke mellom nøkkelenheten og låse-enheten vil dataprosessororganer i hovedenheten kunne utføre en tillate/sperrefunksjon, heretter kalt prosessering, basert på data som ligger lagret i det eksterne lager.
I samsvar med foreliggende oppfinnelse frigjøres ikke hovedenheten for normal funksjonering dersom ikke data som er bestemt som korrekte data, tilføres hovedenheten fra det eksterne lager. Derved kan effektivt tilførselen av feil-aktig programvare eller bruken av feilbeheftede eksterne lagermedia utelukkes.
I en foretrukket utførelse i samsvar med foreliggende oppfinnelse benyttes én og samme digitale prosessor-kretser både som nøkkelenhet og som låseenhet. De to digitale kretser utfører en forhåndsbestemt dataprosessering i innbyrdes synkronisme og styrt av ett og samme program. Deretter sammenlignes resultatet fra den låsende digitale prosessor-krets med tilsvarende fra den digitale nøkkelprosessorkrets.
I samsvar med denne foretrukkede utførelse kan riktighetsbestemmelsen for programvaren fra det eksterne lager bestemmes pålitelig rett og slett ved at en og samme digitale pro-sessorkrets tilføyes både hovedenheten og det eksterne lager.
Det er således skaffet tilveie et system for bestemmelse av en programvares riktighet i et databehandlingsapparat, kjennetegnet ved de trekk som fremgår av det etter-følgende krav l's karakteristiske del, og hvor ytterligere fordeler og karakteristiske trekk vil fremgå av underkravene.
Oppfinnelsen og dens fordeler vil bedre fremgå av den etterfølgende beskrivelse av utførelseseksempler i forbindelse med de ledsagende tegninger, hvor fig. 1 viser en perspektivskisse av et eksempel på en videospilloppstilling i samsvar med oppfinnelsen, fig. 2 er et blokkdiagram som viser denne oppstillings hovedblokker, fig. 3 er et blokkdiagram som viser låseenhetens kretser, fig. 4 er et tidsdiagram som illustrerer virkemåten for kretsene på fig. 3, fig. 5 er et flytdiagram hvor virkemåten for blokkdiagrammet på fig. 2 er skissert, fig. 6 er et flytdiagram som for-klarer virkemåten av flytdiagrammet på fig. 5 i nærmere detalj, fig. 7 er et flytdiagram som belyser et modifisert eksempel i samsvar med fig. 6, fig. 8 er en perspektivskisse som viser nok et eksempel på en videospilloppstilling i samsvar med oppfinnelsen, fig. 9 er en skisse av en ut-førelse av en diskett som anvendes i oppstillingen vist på fig. 8, og fig. 10 er en skisse av leseinnretningen eller diskettstasjonen anvendt i oppstillingen på fig. 8.
Som nevnt viser fig. 1 en perspektivskisse av et eksempel på en videospilloppstilling eller -maskin i samsvar med oppfinnelsen, og i det etterfølgende vil beskrivelsen dreie seg om det tilfelle hvor foreliggende oppfinnelse anvendes i denne videospillmaskin. Imidlertid skal det gjøres oppmerksom på at oppfinnelsen vil kunne anvendes på et hvilket som helst databehandlingsapparat såsom en datamaskin,
en ordprosessor, et bankdatasystem eller lignende hvor det benyttes et eksternt lager, eksempelvis i form av en datakassett, en diskettstasjon, kort med lagret informasjon i form av digitale data, eller lignende.
En oppstilling av et apparat 10 for dataspill omfatter her en hovedenhet 12 og styreenheter 14a og 14b tilkoblet hovedenheten 12. En ekstern lagerenhet 16 i form av en datakassett er direkte anordnet på hovedenheten 12, og som det vil bli beskrevet senere, omfatter kassetten en ROM-krets (et leselager) som inneholder data i form av et program for utførelse av det eller de aktuelle dataspill. Hovedenheten 12 genererer et videosignal som er tilpasset spillet, ut fra signaler som gis av styreenhetene 14a og 14b, styrt av datakassettens program, og dette videosignal føres uforandret til et fjernsynsapparats 18 videoinngang eller det omformes til et fjernsynssignal for tilførsel til fjernsynsapparatets antenneinngang. Operatøren følger med på bildet på fjernsynsapparatets 18 skjerm og betjener styreenhetene 14a og 14b i samsvar med bildet, slik at spillet kan foregå i samsvar med programmet som er lagret i den eksterne lagerenhet 16 i form av datakassetten.
På fig. 2 viser hovedenhetens 12 blokkdiagram en kontakt 20 for tilkobling til en tilsvarende kontakt 22 i den eksterne lagerenhet 16 som i dette tilfelle er utformet som en kassett.
En spillmikroprosessor 24, f.eks. av typen Z80A fra Zilog befinner seg på det trykte kretskort (ikke vist) i hovedenheten 12, og styreenhetene 14a og 14b samt fjernsynsmottakeren 18 er så tilkoblet denne mikroprosessor 24 via et grensesnitt 26.
En PPU-enhet (bildeprosesseringsenhet) 28, en integrert krets 30 for bestemmelse av riktighet og en klokkeoscillator 32 finnes også i hovedenheten 12. Prosessorenheten 28 består f.eks. av den integrerte krets 2C03 fra Nintendo, og denne krets gir på sin utgang videoinformasjon som så prosesseres av spillmikroprosessoren 24 til et fjernsynssignal for mottakeren 18.
Den integrerte krets 30 kan bestå av en 4-bits mikroprosessor såsom 10NES fra Nintendo, og denne krets kan også være benyttet for den integrerte krets 34 for bestemmelse av riktighet på det kretskort (ikke vist) som befinner seg i datakassetten som representerer den eksterne lagerenhet 16. En resettingsbryter 36 er tilkoblet kretsens 30 resettingsport og parallelt med denne bryter er det innkoblet en tilbakestillings- eller resettingskon-densator 38. Denne kondensator 38 lades når en hovedbryter 40 (fig. 1) slås på og det etableres da en innledende resetting (power-on-clear) som legger den integrerte krets 30 til den tilbakestilte eller resatte status en bestemt tid.
En ROM-krets 42 for lagring av dataspillprogrammet og en krets 44 for generering av de data som representerer tegnene som trengs i spillet, befinner seg også på det trykte kretskort i datakassetten. Dette kretskort er elektrisk tilkoblet krets-kortet i hovedenheten 12 via de to kontakter 20 og 22.
En klokkelinje CL fra klokkeoscillatoren 32 går til den integrerte krets 34 for bestemmelse av riktighet via kontaktene 20 og 22.
Som vist på fig. 2 jordes en bestemt port på kretsen 30, mens en bestemt port på den tilsvarende krets 34 er ført til en spenningskilde Vcc. Ved denne forskjell tjener kretsen 30 hhv. 34 som nøkkelenhet eller låseenhet avhengig av tilkoblingen.
For at kretsene 30 og 34 skal kunne utveksle data med hverandre, er tilsvarende porter I, 0 og R direkte forbundet over kontaktene 20 og 22, og klokkelinjen CL føres til begge kretser fra klokkeoscillatoren 32. Kretsene 30 og 34 er i full synkronisme slik at de til enhver tid har samme status.
detalj med henvisning til fig. 3. Kretsen 34 i den eksterne lagerenhet 16 er oppbygget på nøyaktig samme måte, og for enkelhets skyld er på fig. 3 angitt et nytt sett henvisningstall i parentes som gjelder denne integrerte krets 34.
Som beskrevet ovenfor bestemmer kretsene 30 hhv. 34 om de data som ligger i den eksterne lagerenhet 16 er riktige eller usanne, og bestemmelsen tas ut fra en datautveksling mellom de to kretser. Kretsene funksjonerer som en låseinn-retning med den tilhørende nøkkel. I samsvar med dette vil i det følgende den integrerte krets 30 kalles en låsekrets og kretsen 34 vil kalles en nøkkelkrets.
Betraktes nå fig. 3, fremgår det at låsekretsen eksempelvis består av en 4-bit mikroprosessor med en CPU-enhet 30a som hovedprosessor og en ROM-krets 30b og en RAM-krets 30c som halvlederlågere. ROM-kretsen 30b lagrer et styreprogram for CPU-enheten 30a, og i dette program inngår to aritmetiske programmer. I ett styreprogram inngår en rekke styreformler og data for tilfeldige tall for de aritmetiske operasjoner som fastlegges av formlene. I styreprogrammet inngår også et bestemmelsesprogram for sammenligning av resultatene fra det tilsvarende andre aritmetiske program fra nøkkelkretsen 34 og tilsvarende for sammenligning av resultatene fra nøkkelkretsens operasjon med data i låsekretsens program.
Styreprogrammet inneholder også kontrollalgorit-mer for resettingen eller utløsning av denne for hovedenheten 12 ut fra det oppnådde resultat som gir bestemmelsen om programvaren riktighet. En akkumulator 3Od er tilkoblet CPU-enheten 30a og et register 30e er tilkoblet ROM-kretsen 30b. Registeret 3Oe benyttes for temporær lagring av programdata fra ROM-kretsen 30b. Videre finnes en frekvensdeler 30f som mottar klokkepulser over klokkelinjen CL fra klokkeoscillatoren 32 (fig. 2), og frekvensdelerens utgang er satt til f.eks. 1/4 av den innkommende klokkefrekvens. CPU-enheten 30a utfører sekvensielle programtrinn i avhengighet av pulsene på de fire utganger 01, 02, 03 og 04 fra frekvenstelle-ren 3Of.
CPU-enheten 3 0a, akkumulatoren 3Od og registeret 3Oe er alle sammenkoblet over en databuss 3Og, som også er koblet til et grensesnitt 30h fra hvilket data overføres til nøkkelkretsen 34 og motsatt tilfører data fra denne til låsekretsen 30. Fra grensesnittet 30h føres også to resettings-signaler RESET 1 og RESET 2, hvor det første signal føres til nøkkelkretsen 34 for resetting av denne, mens det andre signal, RESET 2 går til spillmikroprosessoren 24, PPU-enheten 28 og videre i hovedenheten 12 for resetting av disse. For å frigjøre resettingen av nøkkelkretsen 34 og hovedenheten 12, er det tilstrekkelig å invertere de to signaler : RESET 1 hhv. RESET 2.
Nå skal kort virkemåten for frekvensdeler 30f, med tidsdiagram vist på fig. 4, omtales. Som nevnt tidligere deler frekvensdeleren 30f frekvensen på klokkelinjen CL fra klokkeoscillatoren 32 i f.eks. fire. I samsvar med dette går de fire signaler på linjene 01, 02, 03 og 04 ut fra frekvensdeleren med innbyrdes forskjøvet fase til CPU-enheten 30a som så utfører påfølgende operasjoner synkront med disse fire innkommende signaler. Eksempelvis vil data fra grensesnittet 30h leses i synkronisme med signalet på linjen 01 og de programmerte aritmetiske operasjoner (dataprosesserin-gen) utføres i synkronisme med signalene på linjene 0 2 og 0 3 . Data fra grensesnittet 30h føres ut i takt med signalet på linjen 04.
Samtidig føres disse fire faseforskjøvne signaler til nøkkelkretsen 34 som i samsvar med dette drives fullstendig synkront med låsekretsen 30. Nærmere bestemt har disse to kretser 30 og 34 eksakt det samme antall trinn i dataprogrammet og den samme kretsarkitektur med samme maskinvare og ett og samme klokkesignal, slik at maskinsyklusene sammenfaller fullstendig i disse to kretser.
Nå skal flytdiagrammet på fig. 5 og senere de nærmere detaljer i flytdiagrammet på fig. 6, forklares.
Øverst i flytdiagrammet på fig. 5 indikeres at
E^an eksterne lagerenhet 16 i form av datakassetten overfører data til hovedenheten 12, og hovedbryteren 40 (fig. 1 ) på denne slås på for å starte forløpet (trinn Sl). I det deretter føl-gende trinn S2 gir låsekretsen 30 ut et resettingssignal RESET 2 og resetter spillmikroprosessoren 24, PPU-enheten 28 og
eventuelt andre enheter i hovedenheten 12, hvorved den resatte status opprettholdes. Følgelig kan intet spill utføres i denne status, når hovedenheten 12 er resatt.
I det neste trinn, S3 synkroniseres låsekretsen 30 med nøkkelkretsen 34. En måte å synkronisere disse på er beskrevet i forbindelse med fig. 4. Maskinsyklusen for låsekretsen 30 settes slik at resettingssignalet RESET 1 til nøkkel-kretsen 34 fra låsekretsen 30 føres ut mellom en puls på signallinjen 04 og den etterfølgende puls på signallinjen 0 1. Derfor er signalet på linjen 01 det første signal som til-lates ført til nøkkelkretsen 34. Denne krets kan så starte samtidig med låsekretsen 30, siden begge mottar samtidig en puls over linjen 01. I trinn S3 synkroniseres altså disse kretser 30 og 34, og deretter utfører disse to kretser de på-følgende operasjoner i full synkronisme.
I trinn S4 utføres gitte aritmetiske operasjoner både av låsekretsen 30 og nøkkelkretsen 34, og ved dette tidspunkt utfører de to kretser samme aritmetiske operasjon. Hvis således den eksterne lagerenhet 16 gir korrekte data, vil resutatet fra de to aritmetiske operasjoner som utføres i trinn S4 være identisk for de to kretser.
I trinn S5 overføres resultatet av disse operasjoner gjensidig mellom de to kretser 30 og 34, og i trinn S6 sammenlignes de to resultater med hverandre. Hvis det så fastslås at det foreligger koinsidens mellom de to resultater (S7),ut-løses resettingssignalene RESET 1 og RESET 2 ved hjelp av låsekretsen 30 slik at låsekretsen 34 og hovedenheten 12 begge frigjøres.
I motsatt tilfelle,dersom det fastslås at de to resultater ikke overensstemmer (NEI-utgang i S7) t fortsetter låsekretsen 30 i trinn S9 å generere resettingssignalene RESET 1 og RESET 2 og den resatte status opprettholdes for nøkkel-kretsen 3 4 og hovedenheten 12. Følgelig kan operatøren ikke bevirke fortgang i dataspillet så lenge denne status holdes. På fig. 6 er vist ytterligere en detaljert sekvens for flyten i apparatet. Hvis den eksterne lagerenhet 16 har over-ført de innledende data til hovedenheten 12 og hovedbryteren 40 (fig. på denne er påslått._ellor resettingsbryteren 36 er på-slått, utføres resettingsoperas jonen for låsekretsen 30, hvilket fremgår av blokken antydet med trinn S10 på fig. 6A.
I det etterfølgende trinn Sil fastslår låsekretsen 30 om den arbeider som en låse- eller en nøkkelenhet. Som forklart i forbindelse med fig. 2 utføres denne fastslåelse eller bestemmelse ved å detektere om den bestemte port er jordet eller koblet til tilførselsspenningen V . I det viste tilfelle skal kretsen 30 funksjonere som en låsekrets, men i det tilfelle hvor det bestemmes at kretsen 30 skal arbeide som en nøkkelenhet,vil en ustabil status kunne finne sted dersom det f.eks. foreligger feilkobling av ledninger, feilfunksjonering eller lignende. Det vil da. foreligge en ustabil statustilstand slik at ingen operasjon kan utføres.
Fra JA-utgangen av trinn Sil gir låsekretsen 30 resettingssignalet RESET 2 til hovedenheten 12 i trinn Sl2 slik at denne ikke kan utføre dataspillets program, men fortsatt holdes i resatt tilstand. Spillmikroprosessoren 24 og PPU-enheten 28 (fig. 2) tvinges såtilsine resatte tilstander og holdes der til denne tilstand frigjøres i det senere beskrevne trinn S21. I trinn S12 går også resettingssignalet RESET 1 til resetting av nøkkelkretsen 34.
I neste trinn, S13 frigjør låsekretsen den resatte tilstand for nøkkelkretsen 34,og disse to kretser synkroniseres med hverandre på samme måte som i trinn S3 beskrevet ovenfor (fig. 5). Fra og med dette tidspunkt er de to kretser 30 og 34 innbyrdes synkronisert og de følger samme programtrinn helt i takt.
Når den resatte tilstand er frigjort for nøkkel-kretsen 34 i trinn S13, fastslår denne krets om den skal arbeide som en låse- eller en nøkkelenhet i neste trinn Sil<1>. Bestemmelsen om dette i dette trinn Sil' kan utføres ved detektering av om den bestemte port på nøkkelkretsen 34 .er jordet eller tilkoblet tilførselsspenningen Vcc på samme måte som bestemmelsen i det tidligere omtalte trinn Sil. Hvis bestemmelsen gir "NEI", foreligger en ustabil tilstand slik at ingen operasjoner kan utføres. Når derimot JA-utgangen følges i trinnet Sli' ,utføres de etterfølgende trinn S14' etc. som vist på fig. 6A.
For låsekretsen 30 følger trinn S14 da etter at trinn S13 er fullført. Som nevnt tidligere fortsetter låsekretsen 30 og nøkkelkretsen 34 i fullsynkronisme relatert til tidsreferansen.
I trinn S14 og parallelt i trinn S14<1> gir kretsene 30 og 34 ut data for tilfeldige tall fra de respektive programmerte ROM-kretser 30:b og 34. (fig. 3). Dette utføres ved hjelp av én og samme funksjon for utvelgelse av tilfeldige data. Følgelig blir de data ut fra det tilfeldige funksjonsvalg og som tilføres låsekretsen 30 og nøkkelkretsen 34 identiske.
Deretter, i trinn S15 og S151, utveksler låsekretsen 30 data med tilsvarende data fra nøkkelkretsen 34, og data fra de tilfeldig utvalgte tall leses inn gjensidig. I det neste trinn, S16 og S16<1>, utfører kretsene 30 og 34 den forhåndsbestemte dataprosessering eller de aritmetiske operasjoner som bygger på data for de tilfeldige tall tilført gjensidig fra den andre krets. Den algoritme som benyttes i den første aritmetiske operasjon i trinn S16 og S16' er eksakt den samme som benyttes i de to kretser 30 og 34, og resultatet fra disse operasjoner blir den samme for begge kretser når de tilførte data fra de tilfeldig valgte tall også er de samme. I de neste parallelle trinn S17 og S17<1> gir låsekretsen 30 og nøkkel-kretsen 34 resultatet fra de aritmetiske operasjoner til den andre krets,og i trinnene S18 og S18<1> mottar disse to kretser gjensidig resultatet fra den andre krets. De to kretser ut-fører samtidig samme operasjon,og det resultat som kommer ut i trinn S18 og S18' er således også sammenfallende i tid. I dette utførelseseksempel foreligger altså ikke bare koinsidens mellom resultatene fra de to parallelle aritmetiske operasjoner, men også tidskoinsidens må finne sted for å gi kon-klusjonen riktig datainformasjon fra det eksterne lager.
I trinn S19 sammenligner låsekretsen 30 sitt eget aritmetiske resultat med det tilsvarende resultat fra nøkkel-kretsen 34, og det bestemmes om disse er sammenfallende. Som et resultat av denne sammenligning, dersom det fastslås et "NEI" i trinn 20, opprettholder kretsen 30 resatt tilstand for hver av kretsene i hovedenheten 12, nemlig spillmikroprosessoren 24, PPU-enheten 28 etc. frem til og med neste trinn 22 som indikerer at hovedenheten 12 hindres i å fort-sette spillprogrammet.
En alarm kan genereres dersom ikke koinsidens har funnet sted ved dette tidspunkt, og en slik alarm kan være en erstatning for opprettholdelse av den resatte tilstand, eller prosesseringen kan føres tilbake til det innledende trinn Sil.
Dersom resultatet av sammenligningen i trinn S19
fører til JA-utgangen i trinn S20, frigjør låsekretsen 30 spillmikroprosessorens 24 og PPU-enhetens 28 resatte tilstand i neste trinn S21.
Som fig. 6B viser, genererer låsekretsen 30 i det neste trinn, S23 en første og en andre verdi som et tilfeldig valgt tall ut fra en bestemt utvelgelsesalgoritme. I det etterfølgende trinn S24 velger kretsen 30 en av de mulige aritmetiske operasjonsalgoritmer ved å benytte den andre verdi for de tilfeldig valgte tall,og kretsen 30 plasserer så den første og den andre verdi for disse tall som de verdier som skal inngå i den aritmetiske operasjonsalgoritme. I den viste utførelse finnes nærmere bestemt n(et positivt heltall) typer aritmetiske operasjonsalgoritmer gitt på forhånd i det aritmetiske operasjonsprogram i ROM-kretsen 3Cb (fig. 3), og blant disse velges en bestemt algoritme ut fra den verdi som den andre utvelgelse av de tilfeldige tall gir. Deretter ut-føres i trinn S25 den valgte aritmetiske operasjonsalgoritme når de første og de andre verdier fra de tilfeldig valgte tall er innsatt i algoritmen.
Fremdriften ifølge de indikerte trinn S19 - S25 utføres på samme måte når det gjelder nøkkelkretsen 34. Således benyttes samme tilfeldige utvelgelsesalgoritme for generering av de første og de andre verdier fra de valgte tall på samme måte som omtalt for låsekretsen 30. På samme måte settes betingelsene for den tilfeldige utvelgelsesalgoritme ved genereringen av de første og de andre verdier for de tilfeldige tall helt likt med det som er beskrevet for låsekretsen 30 når det gjelder nøkkelkretsen 34. Hvis således den eksterne-- lagerenhet 16 inneholder korrekte data, vil samme aritmetiske operasjonsalgoritme velges for begge, kretsene 30 og 34, og resultatet etter utførelse av denne algo-
ritme blir derfor den samme i begge tilfeller.
I det etterfølgende trinn S2 6 gir låsekretsen 30 resultatet fra den aritmetiske operasjon i henhold til S25 til nøkkelkretsen 34 og samtidig mottar kretsen 30 de tilsvarende aritmetiske operasjonsresultater fra nøkkelkretsen. Helt tilsvarende operasjon utføres i selve nøkkelkretsen 34. Deretter sammenligner låsekretsen 30 i trinn S27 og S28 sitt eget aritmetiske operasjonsresultat med det tilsvarende fra nøkkel-kretsen 34, og det bestemmes om det foreligger koinsidens eller ikke mellom disse resultater.
Hvis den eksterne lagerenhet 16 finnes å ha overført feildata til hovedenheten 12, vil resultatene etter de aritmetiske operasjoner i de to omtalte kretser ikke sammenfalle, og følgelig sender låsekretsen 30 i trinn S2 9 resettingssignalet RESET 2 til spillmikroprosessoren 24, PPU-enheten 2 8 etc. i hovedenheten 12 slik at disse holdes i den resatte tilstand og fremdriften stanses.
Hvis derimot låsekretsen 30 fastslår at resultatet fra de aritmetiske operasjoner fra egen utgang og fra kretsens 34 utgang sammenfaller, føres prosessen tilbake til trinn S24, hvoretter trinnene S24 - S28 gjentas. Med andre ord gjentas den andre aritmetiske operasjonsalgoritme i trinnene S24 -
S28 kontinuerlig i dette utførelseseksempel så lenge som hovedenheten 12 betjenes, helt til et koinsidensavvik ved resultatene fra de aritmetiske operasjoner finner sted. Selv om dette finner sted kun én gang velges i stedet trinn S29
og hovedenheten 12 stanses.
Helt tilsvarende utføres samme operasjoner som de omtalt i trinn S26 - S29 for nøkkelkretsen 34. Imidlertid har nøkkelkretsen ingen effekt på resetting eller frigjøring av kretsene i hovedenheten 12, siden intet resettsignal føres til hovedenheten fra nøkkelkretsen 34. Når det gjelder nøkkel-kretsens funksjon i det trinn som tilsvarer trinn S29, blir dette noe annerledes, siden både ROM-kretsene 42 og 44 (fig. 2) begge normalt har en velgeport (chip-select "terminal) , og denne port kan være sperret. I så fall vil ikke mikro-prosessoren 24 eller PPU-enheten 28 i hovedenheten 12 ha forbindelse med ROM-kretsene 42 og 44, og fortgang i dataspillet hindres.
Det kan være tilstrekkelig å bestemme riktigheten ved å kontrollere resultatet fra de første aritmetiske operasjoner i trinn S16 og S16', men i det viste eksempel fortsetter sammenligningen via den andre aritmetiske operasjon og dennes resultater i trinnene S24 - S28 hele tiden mens hovedenheten 12 betjenes, og riktighetskriteriet for data fra den eksterne lagerenhet 16 kan således betraktes som særdeles sikkert.
I det tilfelle hvor et eksternt lager som omfatter ROM-kretser kopierer ROM-kretsene 42 og 44 fra datakassetten, eller hvor en datakassett med ROM-kretser er programmert med tilsvarende programmer som de som skal benyttes i dataspillet, vil beskyttelse for denne programvare foreligge dersom det ikke brukes identisk samme kretser som i forbindelse med nøkkel-kretsen 34. Også ved å benytte spesialbestilte integrerte kretser eller lignende kretser som det .er. vanskelig å skaffe på det åpne market, vil beskyttelse av programvaren bedres.
Den programvare som således er lagret i den eksterne lagerenhet 16 kan beskyttes enda mer fullstendig_ved benyttelsen av nøkkelkretsen 34 for bestemmelse av riktigheten av de lagrede data og hvor nøkkelkretsen samvirker med låsekretsen 30 i hovedenheten 12. På den måten vil enhver kopiert eller endret datakassett brukt som det eksterne lager utelukkes.
Fig. 7 viser et flytdiagram for et modifisert ut-førelseseksempel i forhold det vist på fig. 6. Så og si samme maskinvare benyttes i dette utførelseseksempel, men her er i tillegg en teller anordnet i RAM-kretsen 30c i låsekretsen 30 og i RAM-kretsen 34:C i nøkkelkretsen 34 (fig. 3) . Denne teller kan så settes til et bestemt antall repetisjoner for den andre aritmetiske algoritme. Detaljene i flytdiagrammet på fig. 7 er de samme i trinnene S110 - S120 og Sill' - S119<1> som tilsvarende trinn S10 - S20 og Sli<1> - S19' på fig. 6, og en ytterligere beskrivelse av disse trinn anses unødvendig.
Hvis derimot koinsidens fastslås som resultat etter de første aritmetiske operasjoner i trinn S120, re-settes telleren i den modifiserte utførelsesform ifølge fig.
7 i trinn S121. Den andre aritmetiske operasjon utføres i trinnene S123 - S128 tilsvarende trinnene S23 - S28 på fig. 6. Hvis imidlertid i dette utførelseseksempel resultatet ut fra de to aritmetiske operasjoner fastslås å være sammenfallende i trinn S128, . inkrementerer låsekretsen 30 telleren (ikke vist) i RAM-kretsen 30c i det neste trinn S130. Deretter bestemmes i det påfølgende trinn S131 om resultatet i telleren tilsvarer det tall som er bestemt å være repetisjonsantallet. Hvis dette ennå ikke er tilfelle, gjentar låsekretsen 30 trinnene S123 - S130.
Hvis så en JA-utgang etableres i trinn S131, dvs. hvis den andre aritmetiske operasjon har blitt gjentatt det foreskrevne antall ganger, frigir låsekretsen 30 den resatte tilstand for spillmikroprosessoren 24, PPU-enheten 28 etc. i hovedenheten 12 i trinnet S132 på samme måte som i det tilsvarende trinn S21 vist på fig. 6.
Deretter følger den andre aritmetiske operasjon gjentatt i det bestemte antall ganger i trinnene S123 - S131, men det må bemerkes at dette antall kan være én.
Hvis så resultatene fra den første aritmetiske operasjon i trinnene S114 - S116 . sammenfaller, frigi : hovedenheten 12 umiddelbart, og deretter følger den andre aritmetiske operasjonsalgoritme som vist i trinnene S123 - S131 som en gjentakelse. Dersom et "NEI" fastslås i trinn S128 under denne repetisjon, holdes hovedenheten 12 i sin resatte tilstand, og hvis et koinsidensavvik ikke forekommer under gjentakelse av den andre aritmetiske operasjon, vil hovedenheten 12 holdes i denne resatte tilstand helt til hovedbryteren 40 (fig. 1) slås av.
Videre kan trinnene S22 og S29 på fig. 6, og tilsvarende trinnene S122 og S129 på fig.7b endres på en måte som skal bli forklart i det følgende. Data for fullstendig sort skjerm på f jernsynsmottakeren 18 og en datagruppe "som representerer spillets tittel er lagret på forhånd i ROM-kretsen 42 i den eksterne lagerenhet" 16. Når så en resettingspuls "gis i 'trinnet S22 eller S29, tilsvarende i trinnet S122 eller S129, vil den sorte fjernsynsskjerm og tittelen vises som en "blinkende", avbrutt informasjon. Derved vil operatøren få informasjon om at data fra den benyttede datakassett som eksternt lager ikke inneholder korrekte data.
Som ekstern lagerenhet 16 kan den ovenfor nevnte ROM-kassett benyttes også i den modifiserte utførelse, men like gjerne kan det eksterne lager være i form av et magnetisk lagringsmedium, en diskettstasjon, magnetiske kort eller det kan være i form av et optisk lagringsmedium såsom en optisk diskett eller lignende.
Fig. 8 viser ,en perspektivisk skisse av nok en utførelsesform i samsvar med foreliggende oppfinnelse, og denne utførelse omfatter en diskettstasjon 48 for eksternt lager. I den utførelse som er vist på fig. 1, kan ikke en diskett overføre data direkte til hovedenheten 12, og i ut-førelseseksemplet vist på fig. 8 er det "i samsvar med dette benyttet en tilpasningsenhet 46 med samme form som den datakassett som er vist på fig. 1. Tilpasningsenheten 46 er da løsbart tilkoblet hovedenheten 12. Selve diskettstasjonen 48 omfatter en leseenhet og er koblet med kabel til tilpasningsenheten 46. En. diskett 50 overfører da de lagrede data til leseenheten i diskettstasjonen 48 og den programvare som finnes på disketten 50 tilføres hovedenheten 12 via tilpasningsenheten 46.
Som vist på fig. 9 omfatter disketten 50 et diskettomslag og en skiveformet magnetisk plate 54 som er dreibart montert i diskettomslaget 52. I denne utførelse er nøkkelkretsen 34 og elektroder 5 6 for tilkobling av denne anordnet i selve diskettomslaget 52.
Som vist på fig. 10 fremgår at diskettstasjonen
48 omfatter en diskettdriver 58 for disketten 50 når denne er innsatt i diskettstasjonen, og videre en kontakt 60 tilkoblet elektrodene 56 på diskettomslaget 52. På denne måte forbindes nøkkelkretsen 34 i disketten 50 til låsekretsen 30 i hovedenheten 12 via elektrodene 5 6 og kontakten 60. I det utfør-elseseksempel som er vist på fig. 8 kan utøvelsen foregå ved å følge programmet som indikert i flytdiagrammet på fig. 6 og 7 ved samvirke mellom låsekretsen 30 (fig. 2) i hovedenheten 12 med nøkkelkretsen 34 som er anordnet i disketten 50 og hvor riktighetsbestemmelsen gjelder de data som er lagret i denne diskett 50.
Som et alternativ kan låsekretsen 30 (fig. 2) anordnes i leseenheten i diskettstasjonen 48 og ikke i hovedenheten 12. I det tilfelle vil resettingspulsen føres til hovedenheten fra diskettstasjonen 48.
Dersom et internt lager omfattes av selve apparatet og f.eks. er anordnet i tilpasningsenheten 46, f.eks. i det tilfelle hvor et lydkildeapparat_har som lager en syntetisator-ROM-krets eller liknende, er nøkkelkretsen 34 helst anordnet
i tilpasningsenheten 46 og forløpet som vist på fig. 6 eller fig. 7 kan følges på samme måte for både nøkkelkretsen 34 og låsekretsen 30 som er innebygget i hovedenheten 12.
Mikroprosessorer kan være benyttet for låsekretsen 30 og nøkkelkretsen 34, eller enklere typer kretser som er i stand til å utøve den digitale aritmetiske algoritme som er beskrevet ovenfor. Ytterligere analoge prosessorer kan videre anvendes for analog prosessering i stedet for den digitale prosessering som er beskrevet. En digital krets kan anvendes for en av kretsene 30 eller 34, mens en analog krets kan benyttes for den andre krets.
I det tilfelle hvor det benyttes en analog krets, kan forskjellige utførelser av denne være aktuelle og de kan avvike noe fra den analoge prosessor som er beskrevet ovenfor. F.eks. kan bestemmelse av riktighet for data i det eksterne lager (programvaren) utføres ved koinsidensmåling mellom frekvenser på klokkelinjen CL og som er omvandlet både av låsekretsen og nøkkelkretsen ifølge ett og samme program. Pulser som sendes ut fra disse kretser omvandles slik at puls/ pause-forholdet styres ifølge et dataprogram,og fra dette kan riktigheten bestemmes ved en koinsidens mellom de to sammen-lignede puls/pause-forhold. Bestemmelsen av riktighet kan også foregå ved å la integrerte nivåer fra like sagtannspenninger sammenfalle, og eventuelle ytterligere sammenlignende operasjoner kan foretas. I ethvert tilfelle vil riktigheten av et eksternt lager kunne bestemmes ved koinsidens mellom resultatene ut fra analog databehandling i hver av de to kretser.
Selv om foreliggende oppfinnelse har blitt detalj-beskrevet i forbindelse med de viste tegninger, må det forstås at dette kun gjelder eksempler og er ikke ment å være begren-sende for oppfinnelsen, idet denne kun er tenkt begrenset ved de etterfølgende krav.

Claims (29)

1. System for å fastlegge autentiteten av dataprogrammer i et databehandlings- eller EDB-apparat, omfattende: en hovedenhet (12), en ekstern lagerenhet (16) for lagring av dataprogrammene, en hovedprosessorenhet (28) i hovedenheten (12), kontakter (20, 22) for løsbar forbindelse mellom den eksterne lagerenhet (16) og hovedenheten (12) for å tillate hovedprosessorenhetens (28) utøvelse av dataprogrammene, en første integrert autentiseringskrets (34) i form av en nøkkelkrets og tilordnet den eksterne lagerenhet (16), en andre integrert autentiseringskrets (30) i form av en låsekrets og tilordnet hovedenheten (12), og en første hhv. andre lagerkrets (34b, 30b) tilordnet sin respektive autentiseringskrets (34, 30), idet autentiseringen av dataprogrammene utføres under samvirke mellom autentiserings-kretsenes låse- hhv. nøkkelfunksjon og under kommando av styre-kretser som på sin side arbeider i henhold til autentitetsfast-leggelsen, KARAKTERISERT VED at de integrerte autentiserings-kretser (34, 30) omfatter en første og en andre sentral prosessorenhet (34a hhv. 30a) som er innrettet for å utføre et første hhv. andre forhåndsbestemt autentiseringsprogram som ligger lagret i den første hhv. andre lagerkrets (34b, 30a), og at styrekretsene er innrettet for å sperre hovedprosessorenheten (28) under utførelsen av autentiseringsprogrammene og ikke frigi den hvis ikke utførelsen av det første autentiseringsprogram ved hjelp av den første prosessorenhet (34a) fremviser en forhåndsbestemt relasjon til den andre prosessorenhets (30a) utførelse av det andre autentiseringsprogram.
2. System ifølge krav 1, KARAKTERISERT VED at autentiseringskretsene (30, 34) med låse- hhv. nøkkelfunksjon har i alt vesentlig identiske sentrale prosessorenheter (30a, 34a).
3. System ifølge krav 1, KARAKTERISERT VED at autentiseringskretsene (30, 34) hver har en i alt vesentlig identisk analog prosessorenhet, og at styrekretsene omfatter kretser for å bestemme om resultatet ved autentiseringen ved hjelp av programmene og utført av de analoge prosessorenheter er identiske, for så å fremvise den forhåndsbestemte relasjon.
4. System ifølge krav 1 eller 2, KARAKTERISERT VED at prosessorenhetene (34a, 30a) er programmert for å overføre et til-bakestillingssignal(RESET) til hovedprosessoren (28) ved sammen-kopling av den eksterne lagerenhet (16) med hovedenheten (12).
5. System ifølge krav 1, 2 eller 4, KARAKTERISERT VED at det første og det andre autentiseringsprogram omfatter samme aritmetiske algoritmeforløp, og at autentiseringskretsen (30) er innrettet for å kunne avgjøre om resultatet av det aritmetiske algoritmeforløp utført av den første og den andre prosessorenhet (34a, 30a) sammenfaller i tid og verdi.
6. System ifølge ett av de foregående krav, KARAKTERISERT VED at prosessorenhetene (34a, 30a) er programmert: a) for egensynkronisering mens hovedprosessorenheten (28) er sperret, b) for deretter å utføre deres lagrede autentiserings-programmer i synkronisme, og c) for deretter å utveksle data og sammenlikne resultatene ved gj ennomløpingen av programmene i de respektive prosessorenheter før frigivning av hovedprosessorenheten (28) fra dennes sperrede tilstand.
7. System ifølge krav 5 eller 6, KARAKTERISERT VED en klokkeinnretning (32) for overføring av ett og samme klokkesignal via en klokkelinje (CL) til både den første og den andre prosessorenhet (34a, 30a) via kontaktene (20, 22) for synkronisering av gj ennomløpingen av autentiseringsprogrammene i prosessoren-hetenes regi.
8. System ifølge krav 7, KARAKTERISERT VED at autentiseringskretsen (30) danner en styrekrets, og at klokkeinnret-ningen (32) er permanent sammenkoplet med den andre prosessorenhet (30a).
9. System ifølge ett av kravene 5-8, KARAKTERISERT VED at det første og det andre autentiseringsprogram omfatter minst første henholdsvis andre prosesseringsalgoritmer, og at styrekretsene omfatter kretser for å bestemme koinsidens mellom resultatet av gjennomløpingen av de første og andre prosesseringsfor-løp.
10. System ifølge krav 9, KARAKTERISERT VED at prosessorenhetene (34a, 30a) er innrettet for å gjenta utførelsen av det andre forløp i samsvar med autentiseringsprogrammet, og at styrekretsene omfatter kretser for å fastlegge om resultatet fra utførelsen av det andre prosesseringsforløp sammenfaller for hver gang det andre forløp gjentas.
11. System ifølge krav 10, KARAKTERISERT VED kretser- for å telle antall ganger som utførelsen av det andre prosesseringsfor-løp er gjentatt av den første og den andre prosessorenhet (34a, 30a).
12. Ekstern lagerenhet (16) for forbindelse med en hovedenhet (12) som omfatter en hovedprosessorenhet (28) for prosessering av data, for å bygge opp et EDB-apparat (10), KARAKTERISERT VED en programlagerkrets (42) for lagring av et dataprogram som skal utføres av hovedenheten (12), og en første integrert krets (34) med en tilordnet lagerkrets (34b) og som er innrettet for å utføre et forhåndsbestemt verifikasjonsprogram som ligger lagret i lagerkretsen (34b) når den eksterne lagerenhet (16) er forbundet med hovedenheten (12) og dennes hovedprosessorenhet (28) er i tilbakestilt tilstand, for å verifisere at dataprogrammet som ligger lagret i lagerkretsen (42) er autori-sert for bruk i hovedenheten (12).
13. Ekstern lagerenhet (16) ifølge krav 12 og innrettet for lagring av et videospillprogram for utførelse av hovedenheten (12), KARAKTERISERT VED at dataprogrammet er et videospillprogram og at den eksterne lagerenhet (16) omfatter tegnlagerkretser (44) for lagring av data som fastlegger videospillrelaterte tegn, og kontakter (22) koplet til lagerkretsene (42), idet tegnlagerkret-sene (44) og prosessorenheten (34a) er innrettet for å kople den eksterne lagerenhet (16) til hovedenheten (12), og idet den første integrerte krets (34) omfatter: grensesnittkretser (34h) for å motta data til hovedenheten (12) via kontaktene og for overføring av data som er tilordnet resultatet av utførelsen av verifikasjonsprogrammet, fra hovedenheten (12) via kontaktene, og lagerkretser (34b) for å motta et synkroniseringssignal via kontaktene (22), idet prosessorenheten (34a) er programmert for å motta, i respons på synkroniseringssignalet, en verdi som frembringes av hovedenheten for å utføre forhåndsbestemte aritmetiske algoritmeforløp for verdien og overføre resultatene til grensesnittkretsene (34h) for overføring av data relatert til verifikasj onsresultåtene.
14. Ekstern lagerenhet (16) ifølge krav 13, KARAKTERISERT VED at prosessorenheten (34a) er innrettet for å motta ytter ligere verdier via grensesnittkretsene fra hovedenheten (12) og er programmert for sammenlikning av resultatene med de ytterligere verdier.
15. Ekstern lagerenhet (16) ifølge krav 14, KARAKTERISERT VED at prosessorenheten (34a) er programmert for å gi respons overfor registreringen av sammenfall mellom resultatene og de ytterligere verdier for å utføre minst én ytterligere aritmetisk algoritmesekvens.
16. Ekstern lagerenhet (16) ifølge krav 15, KARAKTERISERT VED at prosessorenheten (34a) er programmert for å bringe ut resultatet av den eller hver ytterligere aritmetisk algoritmesekvens .
17. Ekstern lagerenhet (16) ifølge krav 15 eller 16, KARAKTERISERT VED at prosessorenheten (34a) er programmert for gjentatt utøvelse av ytterligere aritmetiske algoritmesekvenser.
18. Ekstern lagerenhet (16) ifølge krav 17, KARAKTERISERT VED at prosessorenheten (34a) er innrettet for å utføre ytterligere aritmetiske algoritmesekvenser under gjennomløping av videospillprogrammer.
19. Ekstern lagerenhet (16) ifølge krav 13, KARAKTERISERT VED at kretsen (34) med nøkkelfunksjon omfatter klokkesignalinn-gangskretser koplet til kontaktene (22) for å motta klokkesignaler over klokkelinjen (CL) fra hovedenheten (12).
20. Ekstern lagerenhet (16) ifølge krav 19, KARAKTERISERT VED at kretsen (34) omfatter lagerkretser (34b) innrettet for å gi respons på klokkesignalene og generere flere taktsignaler som hvert kan aktivere igangsetting av en forhåndsbestemt prosess-sekvens.
21. Ekstern lagerenhet (16) ifølge krav 20, KARAKTERISERT VED at kretsen (34) er innrettet for å gi respons på flere taktsignaler og motta data fra hovedenheten (12) i respons på et første taktsignal, utføre forhåndsbestemte aritmetiske algoritmesekvenser i respons på et andre taktsignal, og overføre data til hovedenheten (12) i respons på et tredje taktsignal.
22. Ekstern lagerenhet (16) ifølge krav 12, KARAKTERISERT VED å være i form av en videospillkassett.
23. Fremgangsmåte for drift av en ekstern lagerenhet (16) og en hovedenhet (12) som omfatter en hovedprosessorenhet (28) for prosessering av data i digital form, idet enhetene tilhører et videospillprosesseringsapparat, omfattende autentisering av data i den eksterne lagerenhet (16), idet denne er løsbart forbundet med hovedenheten (12) og har lagerkretser (42) for å lagre et videografisk program som skal gjennomløpes av hovedenheten, KARAKTERISERT VED: forbindelse av den eksterne lagerenhet (16) med hovedenheten (12), sperring av hovedenhetens hovedprosessorenhet (28), utførelse av et første og et andre forhåndsbestemt autentiseringsprogram ved hjelp av en separat autentiseringskrets (30) i hovedenheten for å autentisere data i den eksterne lagerenhet , overføring av data som er knyttet til resultatet av utførelsen av et andre forhåndsbestemt autentiseringsprogram, fra en ekstern autentiseringskrets (34) i den eksterne lagerenhet (16), til den separate krets (30) i hovedenheten (12), sammenlikning av resultatet fra gjennomløpingen av det første og det andre autentiseringsprogram, frigivning av hovedprosessorenheten (28) fra sin sperrede tilstand og utførelse av minst ett videografisk dataprogram ved hjelp av hovedenheten (12) hvis resultatet av utførelsen av det første autentiseringsprogram fremviser en forhåndsbestemt relasjon til resultatene fra utførelsen av det andre forhåndsbestemte autentiseringsprogram, og opprettholdelse av hovedprosessorenhetens sperrede tilstand hvis resultatet fra utførelsen av det første autentiseringsprogram ikke frembringer den forhåndsbestemte relasjon til resultatene fra utførelsen av det andre autentiseringsprogram.
24. Fremgangsmåte ifølge krav 23, KARAKTERISERT VED samtidig overføring av klokkesignaler til den separate autentiseringskrets (30) og den eksterne tilsvarende autentiseringskrets (34).
25. Fremgangsmåte ifølge krav 23, KARAKTERISERT VED: overføring av klokkesignaler til den separate autentiseringskrets (30) og den eksterne autentiseringskrets (34), og utførelse av flere instruksjoner i disse kretser i respons på hvert mottatt klokkesignal.
26. Fremgangsmåte ifølge krav 25, KARAKTERISERT VED at utførelsen av flere av instruksjonene omfatter: mottaking av data fra den separate krets (30) i respons på et første taktsignal, utførelse av forhåndsbestemte aritmetiske algoritmesekvenser i respons på et andre taktsignal, og overføring av data til kretsen (30) i respons på et tredje taktsignal.
27. Fremgangsmåte ifølge ett av de foregående krav 23-26, KARAKTERISERT VED gjensidig synkronisering av algoritmesekvensene for autentiseringskretsene (30, 34).
28. Fremgangsmåte ifølge ett av de foregående krav 23-27, KARAKTERISERT VED at hver av autentiseringskretsene (30, 34) registrerer tilfeldige data som frembringes av den øvrige autentiseringskrets og utfører forhåndsbestemte prosesseringsalgoritmesekvenser som følge av de registrerte data.
29. Fremgangsmåte ifølge krav 28, KARAKTERISERT VED at de forhåndsbestemte prosesseringsalgoritmesekvenser som utføres av den eksterne autentiseringskrets (34) blir utført samtidig med tilsvarende algoritmesekvenser som utføres av den separate autentiseringskrets (30).
NO862523A 1985-06-24 1986-06-23 System for bestemmelse av en programvares riktighet i et databehandlingsapparat NO177548C (no)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP60138699A JPS61296433A (ja) 1985-06-24 1985-06-24 外部記憶装置のソフトウエア管理システム
JP60143026A JPH0760412B2 (ja) 1985-06-28 1985-06-28 真偽判別素子、およびそれを用いた外部記憶装置

Publications (4)

Publication Number Publication Date
NO862523D0 NO862523D0 (no) 1986-06-23
NO862523L NO862523L (no) 1986-12-29
NO177548B true NO177548B (no) 1995-06-26
NO177548C NO177548C (no) 1995-10-04

Family

ID=26471684

Family Applications (1)

Application Number Title Priority Date Filing Date
NO862523A NO177548C (no) 1985-06-24 1986-06-23 System for bestemmelse av en programvares riktighet i et databehandlingsapparat

Country Status (8)

Country Link
US (3) US4799635A (no)
EP (1) EP0206704B1 (no)
AU (2) AU599317B2 (no)
CA (1) CA1270339A (no)
DE (1) DE3689574T2 (no)
FI (1) FI92767C (no)
HK (2) HK195A (no)
NO (1) NO177548C (no)

Families Citing this family (135)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60107155A (ja) * 1983-11-16 1985-06-12 Hitachi Ltd 記憶ボリユ−ムのデ−タ保護方式
USRE34161E (en) * 1985-10-04 1993-01-12 Nintendo Company Limited Memory cartridge and information processor unit using such cartridge
US5014234A (en) * 1986-08-25 1991-05-07 Ncr Corporation System with software usage timer and counter for allowing limited use but preventing continued unauthorized use of protected software
US4975647A (en) * 1987-06-01 1990-12-04 Nova Biomedical Corporation Controlling machine operation with respect to consumable accessory units
FR2633086B1 (fr) * 1988-06-20 1990-11-09 Dupre Michel Jean Procede et appareil d'enregistrement numerique de donnees, support protege d'enregistrement de donnees et appareil de lecture de donnees enregistrees sur un tel support
US4932054A (en) * 1988-09-16 1990-06-05 Chou Wayne W Method and apparatus for protecting computer software utilizing coded filter network in conjunction with an active coded hardware device
US5293029A (en) * 1989-01-17 1994-03-08 Kabushiki Kaisha Toshiba System for mutually certifying an IC card and an IC card terminal
FR2643475A1 (fr) * 1989-02-21 1990-08-24 Livowsky Jean Michel Procede de controle de l'utilisation d'un support d'informations, notamment magnetique ou magneto-optique et systemes pour sa mise en oeuvre
KR0149503B1 (ko) * 1989-04-20 1999-05-15 야마우찌 히로시 메모리 카트리지
GB8912866D0 (en) * 1989-06-05 1989-07-26 Code Masters Softwara Interfacing device for a computer games system
IE903539A1 (en) * 1989-10-03 1991-04-10 Cradle Electronics Electro-active cradle circuits for the detection of access¹or penetration
US5004232A (en) * 1989-10-13 1991-04-02 Macronix, Inc. Computer game cartridge security circuit
US5271098A (en) * 1989-11-07 1993-12-14 Chips And Technologies, Inc. Method and apparatus for use of expanded memory system (EMS) to access cartridge memory
US5029207A (en) 1990-02-01 1991-07-02 Scientific-Atlanta, Inc. External security module for a television signal decoder
GB9005916D0 (en) * 1990-03-16 1990-05-09 Amstrad Plc Computer system
JP2560124B2 (ja) * 1990-03-16 1996-12-04 株式会社セガ・エンタープライゼス ビデオゲームシステム及び情報処理装置
US5033084A (en) * 1990-04-02 1991-07-16 Data I/O Corporation Method and apparatus for protection of software in an electronic system
US5111504A (en) * 1990-08-17 1992-05-05 General Instrument Corporation Information processing apparatus with replaceable security element
US5144664A (en) * 1990-11-16 1992-09-01 General Instrument Corporation Apparatus and method for upgrading terminals to maintain a secure communication network
AU640078B2 (en) * 1991-03-07 1993-08-12 Home Entertainment Suppliers Pty Limited Computer cartridge
JP3057835B2 (ja) * 1991-09-09 2000-07-04 日本電気株式会社 ハードウェアレビジョン管理装置
US5388841A (en) 1992-01-30 1995-02-14 A/N Inc. External memory system having programmable graphics processor for use in a video game system or the like
US5357604A (en) * 1992-01-30 1994-10-18 A/N, Inc. Graphics processor with enhanced memory control circuitry for use in a video game system or the like
CA2074388C (en) * 1992-01-30 2003-01-14 Jeremy E. San Programmable graphics processor having pixel to character conversion hardware for use in a video game system or the like
US5434870A (en) * 1992-04-17 1995-07-18 Unisys Corporation Apparatus and method for verifying the authenticity of a circuit board
GB9210786D0 (en) * 1992-05-20 1992-07-08 Codemasters Ltd Memory cartridges
JPH0628173A (ja) * 1992-07-07 1994-02-04 Minolta Camera Co Ltd プログラムの置換方法及び装置
JP2953267B2 (ja) * 1992-10-13 1999-09-27 コナミ株式会社 画像作成装置における外部メモリ制御装置
KR100188174B1 (ko) * 1992-10-30 1999-06-01 이리마지리 쇼우이치로 정보 처리 장치
US5572235A (en) * 1992-11-02 1996-11-05 The 3Do Company Method and apparatus for processing image data
US5838389A (en) * 1992-11-02 1998-11-17 The 3Do Company Apparatus and method for updating a CLUT during horizontal blanking
US5596693A (en) * 1992-11-02 1997-01-21 The 3Do Company Method for controlling a spryte rendering processor
US5481275A (en) 1992-11-02 1996-01-02 The 3Do Company Resolution enhancement for video display using multi-line interpolation
US20010011224A1 (en) * 1995-06-07 2001-08-02 Stephen James Brown Modular microprocessor-based health monitoring system
US5778421A (en) * 1992-11-26 1998-07-07 Nintendo Co., Ltd. Information processing system which can check disk-like storage medium having prescribed relation therewith and disk-like storage medium therefor
JPH06161902A (ja) * 1992-11-26 1994-06-10 Nintendo Co Ltd 補助記憶媒体の真偽判別装置およびそれに用い られる補助記憶装置
US7209901B2 (en) 1992-12-15 2007-04-24 Sl Patent Holdings Llc C/O Aol Time Warner Method for selling, protecting, and redistributing digital goods
US6266654B1 (en) * 1992-12-15 2001-07-24 Softlock.Com, Inc. Method for tracking software lineage
US7089212B2 (en) * 1992-12-15 2006-08-08 Sl Patent Holdings Llc System and method for controlling access to protected information
US5509070A (en) * 1992-12-15 1996-04-16 Softlock Services Inc. Method for encouraging purchase of executable and non-executable software
US7831516B2 (en) 1992-12-15 2010-11-09 Sl Patent Holdings Llc System and method for redistributing and licensing access to protected information among a plurality of devices
US5752073A (en) * 1993-01-06 1998-05-12 Cagent Technologies, Inc. Digital signal processor architecture
US5591104A (en) * 1993-01-27 1997-01-07 Life Fitness Physical exercise video system
US5796940A (en) * 1993-03-10 1998-08-18 Sega Enterprises, Ltd. Method for executing software program and circuit for implementing the method
US5533125A (en) * 1993-04-06 1996-07-02 International Business Machines Corporation Removable computer security device
US5592651A (en) * 1993-06-11 1997-01-07 Rackman; Michael I. Method and system for limiting multi-user play of video game cartridges
US5572589A (en) * 1993-12-09 1996-11-05 Microsoft Corporation Disc serialization
US5666516A (en) * 1993-12-16 1997-09-09 International Business Machines Corporation Protected programmable memory cartridge having selective access circuitry
WO1995031061A1 (en) * 1994-05-05 1995-11-16 Catapult Entertainment, Inc. Network architecture for real-time video games
US5586257A (en) * 1994-05-05 1996-12-17 Perlman; Stephen G. Network architecture to support multiple site real-time video games
US5636209A (en) * 1994-05-05 1997-06-03 Perlman; Stephen G. Modem to support multiple site call conferenced data communications
US5558339A (en) * 1994-05-05 1996-09-24 Perlman; Stephen G. Network architecture to support recording and playback of real-time video games
US5624316A (en) * 1994-06-06 1997-04-29 Catapult Entertainment Inc. Video game enhancer with intergral modem and smart card interface
JPH0816530A (ja) * 1994-07-04 1996-01-19 Kurieiteibu Design:Kk コプロセサシステムおよび補助演算機能付外部メモリ装置
JPH08138307A (ja) 1994-09-16 1996-05-31 Toshiba Corp 情報記憶装置
US5941775A (en) * 1994-10-14 1999-08-24 Sega Of America, Inc. Data processing system, method thereof and memory cassette
US5680533A (en) 1994-10-31 1997-10-21 Nintendo Co., Ltd. Videographics program/video game fabricating system and method
US5592609A (en) * 1994-10-31 1997-01-07 Nintendo Co., Ltd. Video game/videographics program fabricating system and method with unit based program processing
US6115036A (en) * 1994-10-31 2000-09-05 Nintendo Co., Ltd. Video game/videographics program editing apparatus with program halt and data transfer features
US5599231A (en) * 1994-10-31 1997-02-04 Nintendo Co., Ltd. Security systems and methods for a videographics and authentication game/program fabricating device
US5680534A (en) * 1994-10-31 1997-10-21 Nintendo Co., Ltd. Video game/videographics program fabricating system and method with superimpose control
AU4149196A (en) * 1994-11-04 1996-05-31 Catapult Entertainment, Inc. Method and apparatus for loosely synchronizing closed free-running raster displays
AU4158496A (en) * 1994-11-14 1996-06-06 Catapult Entertainment, Inc. Method and apparatus for synchronizing the execution of multiple video game systems in a networked environment
US5651060A (en) * 1994-11-15 1997-07-22 Catapult Entertainment, Inc. Method and apparatus for detecting and recovering from call waiting interruptions to modem communications
US7690043B2 (en) * 1994-12-19 2010-03-30 Legal Igaming, Inc. System and method for connecting gaming devices to a network for remote play
US5644636A (en) * 1994-12-30 1997-07-01 Xtec, Incorporated Method and apparatus for securing data stored in semiconductor memory cells
US5721951A (en) * 1995-02-24 1998-02-24 Digital Interactive Corporation Systems, Ltd. Home entertainment system for playing software designed for play in home computer
US5644444A (en) * 1995-03-10 1997-07-01 Iomega Corporation Read/write protect scheme for a disk cartridge and drive
US6724554B1 (en) 1995-03-10 2004-04-20 Iomega Corporation Read/write protect scheme for a disk cartridge and drive
JP2986375B2 (ja) * 1995-06-22 1999-12-06 インターナショナル・ビジネス・マシーンズ・コーポレイション 情報処理装置及びその制御方法
US6331856B1 (en) 1995-11-22 2001-12-18 Nintendo Co., Ltd. Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing
US6022274A (en) 1995-11-22 2000-02-08 Nintendo Co., Ltd. Video game system using memory module
US6071191A (en) * 1995-11-22 2000-06-06 Nintendo Co., Ltd. Systems and methods for providing security in a video game system
US6190257B1 (en) 1995-11-22 2001-02-20 Nintendo Co., Ltd. Systems and method for providing security in a video game system
US6155926A (en) * 1995-11-22 2000-12-05 Nintendo Co., Ltd. Video game system and method with enhanced three-dimensional character and background control
US5812662A (en) * 1995-12-18 1998-09-22 United Microelectronics Corporation Method and apparatus to protect computer software
JPH1083363A (ja) * 1996-03-28 1998-03-31 Mega Chips:Kk ゲームプログラム供給システムおよびプログラム書き換えシステム
US6134590A (en) * 1996-04-16 2000-10-17 Webtv Networks, Inc. Method and apparatus for automatically connecting devices to a local network
US6786420B1 (en) 1997-07-15 2004-09-07 Silverbrook Research Pty. Ltd. Data distribution mechanism in the form of ink dots on cards
US6618117B2 (en) 1997-07-12 2003-09-09 Silverbrook Research Pty Ltd Image sensing apparatus including a microcontroller
US6624848B1 (en) 1997-07-15 2003-09-23 Silverbrook Research Pty Ltd Cascading image modification using multiple digital cameras incorporating image processing
US6690419B1 (en) 1997-07-15 2004-02-10 Silverbrook Research Pty Ltd Utilising eye detection methods for image processing in a digital image camera
US6948794B2 (en) 1997-07-15 2005-09-27 Silverbrook Reserach Pty Ltd Printhead re-capping assembly for a print and demand digital camera system
US7110024B1 (en) 1997-07-15 2006-09-19 Silverbrook Research Pty Ltd Digital camera system having motion deblurring means
US6879341B1 (en) 1997-07-15 2005-04-12 Silverbrook Research Pty Ltd Digital camera system containing a VLIW vector processor
IL123028A (en) 1998-01-22 2007-09-20 Nds Ltd Protection of data on media recording disks
US6378072B1 (en) * 1998-02-03 2002-04-23 Compaq Computer Corporation Cryptographic system
JPH11253660A (ja) * 1998-03-13 1999-09-21 Bandai Co Ltd ゲーム機、該ゲーム機の起動方法及び該ゲーム機用ゲームプログラムの実行方法
NZ509020A (en) * 1998-06-24 2003-01-31 Aristocrat Technologies Au Virtual EPROM simulator apparatus
JP3292698B2 (ja) * 1998-07-10 2002-06-17 株式会社バンダイ 電子機器装置
AUPP702098A0 (en) 1998-11-09 1998-12-03 Silverbrook Research Pty Ltd Image creation method and apparatus (ART73)
SG87837A1 (en) 1998-10-08 2002-04-16 Sony Computer Entertainment Inc Portable toy, portable information terminal, intertainment system, and recording medium
AUPQ056099A0 (en) 1999-05-25 1999-06-17 Silverbrook Research Pty Ltd A method and apparatus (pprint01)
US7704147B2 (en) * 1999-10-06 2010-04-27 Igt Download procedures for peripheral devices
US7290072B2 (en) * 1999-10-06 2007-10-30 Igt Protocols and standards for USB peripheral communications
US6251014B1 (en) * 1999-10-06 2001-06-26 International Game Technology Standard peripheral communication
US7819750B2 (en) * 1999-10-06 2010-10-26 Igt USB software architecture in a gaming machine
US6899627B2 (en) * 1999-10-06 2005-05-31 Igt USB device protocol for a gaming machine
GB2361567B (en) * 2000-04-18 2004-02-11 Mitel Corp Hardware authentication system and method
US7134960B1 (en) * 2000-08-23 2006-11-14 Nintendo Co., Ltd. External interfaces for a 3D graphics system
US6609977B1 (en) 2000-08-23 2003-08-26 Nintendo Co., Ltd. External interfaces for a 3D graphics system
GB2376192A (en) * 2001-05-25 2002-12-11 Tronji Ltd Cartridge based electronic display system.
US7062622B2 (en) * 2001-06-29 2006-06-13 Microsoft Corporation Protection of content stored on portable memory from unauthorized usage
US20030009686A1 (en) * 2001-07-03 2003-01-09 Yu-Te Wu Computer-implemented method for denying unauthorized access to data in a computer data storage medium
US7003588B1 (en) 2001-08-22 2006-02-21 Nintendo Co., Ltd. Peripheral devices for a video game system
US8533776B2 (en) * 2001-09-14 2013-09-10 Lenovo (Singapore) Pte Ltd. Method and system for binding a device to a planar
US20030120922A1 (en) * 2001-12-06 2003-06-26 Fairchild Semiconductor Corporation Device authentication system and method
EP1333350A1 (en) * 2002-01-30 2003-08-06 STMicroelectronics Limited Memory security device
US20030178774A1 (en) * 2002-03-19 2003-09-25 Marcilio Fernando Mauro Card game
US7350081B1 (en) 2002-04-29 2008-03-25 Best Robert M Secure execution of downloaded software
US20030220145A1 (en) * 2002-05-22 2003-11-27 Erickson Craig S. Digital camera and networking accessories for a portable video game device
US20030228911A1 (en) * 2002-06-05 2003-12-11 Dernis Mitchell S. DVD-enabling code server and loader for a console-based gaming system
US20050130745A1 (en) * 2002-06-05 2005-06-16 Microsoft Corporation DVD-enabling dongle for a console-based gaming system
US10102713B2 (en) 2002-10-09 2018-10-16 Zynga Inc. System and method for connecting gaming devices to a network for remote play
US7191898B1 (en) 2003-09-04 2007-03-20 Union Rich Usa, Llc Saw blade case
FR2862397A1 (fr) * 2003-11-13 2005-05-20 St Microelectronics Sa Demarrage securise d'un appareil electronique a architecture smp
US20050228993A1 (en) * 2004-04-12 2005-10-13 Silvester Kelan C Method and apparatus for authenticating a user of an electronic system
JP2006079520A (ja) * 2004-09-13 2006-03-23 Aruze Corp 情報処理装置
JP2006099411A (ja) * 2004-09-29 2006-04-13 Oki Electric Ind Co Ltd ソフトウェアの使用制限方法
US7864158B1 (en) 2004-10-06 2011-01-04 Mcgeever Daniel Robert Use of graphical information to control processes
JP2006296671A (ja) * 2005-04-19 2006-11-02 Aruze Corp 遊技機および遊技用情報の認証取込装置並びに遊技用情報の取込装置
KR20080021834A (ko) * 2005-06-29 2008-03-07 엔엑스피 비 브이 다수의 디바이스들을 포함하는 적어도 하나의 구성의무결성을 보호하는 보안 시스템 및 방법
DE102005043043A1 (de) * 2005-09-09 2007-03-22 Fujitsu Siemens Computers Gmbh Computer mit mindestens einer Anschlussmöglichkeit für ein Wechselspeichermedium und Verfahren zum Starten und Betreiben eines Computers mit einem Wechselspeichermedium
US8484632B2 (en) * 2005-12-22 2013-07-09 Sandisk Technologies Inc. System for program code execution with memory storage controller participation
US8479186B2 (en) * 2005-12-22 2013-07-02 Sandisk Technologies Inc. Method for program code execution with memory storage controller participation
WO2007134115A2 (en) * 2006-05-09 2007-11-22 Disney Enterprises, Inc. Interactive animation
US7841941B2 (en) * 2006-05-24 2010-11-30 Igt Extension component for authenticating game data
JP5479097B2 (ja) * 2006-09-07 2014-04-23 ノキア コーポレイション セキュアモジュールアプリケーションに関連する情報の管理
ES2722648T3 (es) * 2007-01-31 2019-08-14 Nokia Technologies Oy Gestión de aplicaciones relacionadas con módulos seguros
CN101815946B (zh) * 2007-09-01 2015-11-25 生命诊断公司 一次性微处理器分析装置
DE102007047269A1 (de) 2007-10-02 2009-04-09 Atg Luther & Maelzer Gmbh Vollrasterkassette für einen Paralleltester zum Testen einer unbestückten Leiterplatte, Federkontaktstift für eine solche Vollrasterkassette sowie Adapter für einen Paralleltester zum Testen einer unbestückten Leiterplatte
KR20090047917A (ko) * 2007-11-09 2009-05-13 삼성전자주식회사 외장 메모리 액세스 장치 및 방법
BRPI0907030A2 (pt) * 2008-02-01 2015-07-07 Thomson Licensing Cartucho de software protegido por cópia
DE102009016181A1 (de) 2009-04-03 2010-10-14 Atg Luther & Maelzer Gmbh Kontaktierungseinheit für eine Testvorrichtung zum Testen von Leiterplatten
US8978094B2 (en) * 2012-02-03 2015-03-10 Apple Inc. Centralized operation management

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3755641A (en) * 1970-02-05 1973-08-28 M Rackman Mating configurations for connectable components
US3818190A (en) * 1970-09-21 1974-06-18 D Silverman Authentication of access to information records
US3859634A (en) * 1971-04-09 1975-01-07 Little Inc A Digital lock system having electronic key card
US3772662A (en) * 1971-12-30 1973-11-13 Texas Instruments Inc Write ring detector for magnetic recorders
US3839736A (en) * 1972-11-24 1974-10-01 T Hoshall Record tape cartridges
US3934122A (en) * 1974-08-15 1976-01-20 Riccitelli James A Electronic security card and system for authenticating card ownership
US4117605A (en) * 1976-06-24 1978-10-03 Michael J. Freeman Real time conversational toy having secure playback response
JPS5317849A (en) * 1976-08-02 1978-02-18 Hitachi Ltd Transistorized ignition system
US4352492A (en) * 1976-08-23 1982-10-05 Fairchild Camera & Instrument Corp. Data storage apparatus
US4095791A (en) * 1976-08-23 1978-06-20 Fairchild Camera And Instrument Corp. Cartridge programmable video game apparatus
US4105156A (en) * 1976-09-06 1978-08-08 Dethloff Juergen Identification system safeguarded against misuse
US4120030A (en) * 1977-03-11 1978-10-10 Kearney & Trecker Corporation Computer software security system
US4149027A (en) * 1977-05-27 1979-04-10 Atari, Inc. TV game cartridge and method
US4218582A (en) * 1977-10-06 1980-08-19 The Board Of Trustees Of The Leland Stanford Junior University Public key cryptographic apparatus and method
US4193131A (en) * 1977-12-05 1980-03-11 International Business Machines Corporation Cryptographic verification of operational keys used in communication networks
US4310720A (en) * 1978-03-31 1982-01-12 Pitney Bowes Inc. Computer accessing system
US4281215A (en) * 1978-05-03 1981-07-28 Atalla Technovations Method and apparatus for securing data transmissions
US4268715A (en) * 1978-05-03 1981-05-19 Atalla Technovations Method and apparatus for securing data transmissions
US4218738A (en) * 1978-05-05 1980-08-19 International Business Machines Corporation Method for authenticating the identity of a user of an information system
US4193061A (en) * 1978-07-11 1980-03-11 Zoltai John T Electronic authentication system
FR2469760A1 (fr) * 1979-11-09 1981-05-22 Cii Honeywell Bull Procede et systeme d'identification de personnes demandant l'acces a certains milieux
US4295039A (en) * 1979-12-03 1981-10-13 International Business Machines Corporation Method and apparatus for achieving secure password verification
CH637228A5 (fr) * 1980-03-27 1983-07-15 Willemin Machines Sa Dispositif de commande d'une machine ou d'une installation.
FR2483657B1 (fr) * 1980-05-30 1986-11-21 Bull Sa Machine portable pour le calcul ou le traitement de l'information
US4384326A (en) * 1980-07-28 1983-05-17 Ncr Corporation Memory security circuit using the simultaneous occurance of two signals to enable the memory
US4492582A (en) * 1981-01-06 1985-01-08 Mattel, Inc. Teaching and entertainment device
US4432067A (en) * 1981-05-07 1984-02-14 Atari, Inc. Memory cartridge for video game system
US4446519A (en) * 1981-05-26 1984-05-01 Corban International, Ltd. Method and apparatus for providing security for computer software
DE3122037A1 (de) * 1981-05-29 1983-01-05 Siemens AG, 1000 Berlin und 8000 München Elektronisches regelgeraet
US4386773A (en) * 1981-06-22 1983-06-07 Bronstein John M TV Game cartridge with expandable memory
US4471163A (en) * 1981-10-05 1984-09-11 Donald Thomas C Software protection system
US4670857A (en) * 1981-10-26 1987-06-02 Rackman Michael I Cartridge-controlled system whose use is limited to authorized cartridges
US4454594A (en) * 1981-11-25 1984-06-12 U.S. Philips Corporation Method and apparatus to secure proprietary operation of computer equipment
US4442486A (en) * 1981-11-25 1984-04-10 U.S. Philips Corporation Protected programmable apparatus
CA1183276A (en) * 1981-11-25 1985-02-26 Charles B. Heffron Method for identifying a system-allied physically separable program memory and a data processing system utilizing said method
US4430728A (en) * 1981-12-29 1984-02-07 Marathon Oil Company Computer terminal security system
US4500879A (en) * 1982-01-06 1985-02-19 Smith Engineering Circuitry for controlling a CRT beam
US4458315A (en) * 1982-02-25 1984-07-03 Penta, Inc. Apparatus and method for preventing unauthorized use of computer programs
FR2523745B1 (fr) * 1982-03-18 1987-06-26 Bull Sa Procede et dispositif de protection d'un logiciel livre par un fournisseur a un utilisateur
US4462076A (en) * 1982-06-04 1984-07-24 Smith Engineering Video game cartridge recognition and security system
US4757468A (en) * 1982-09-22 1988-07-12 Intel Corporation Authenticated read-only memory
EP0114522A3 (en) * 1982-12-27 1986-12-30 Synertek Inc. Rom protection device
US4680731A (en) * 1983-03-17 1987-07-14 Romox Incorporated Reprogrammable cartridge memory with built-in identification circuitry and programming method
US4602351A (en) * 1983-07-06 1986-07-22 Tokyo Tatsuno Co., Ltd. Device for reading and writing IC-external storage cards
US4575622A (en) * 1983-07-29 1986-03-11 Esac, Inc. Electronic access control system for coin-operated games and like selectively accessible devices
US4562306A (en) * 1983-09-14 1985-12-31 Chou Wayne W Method and apparatus for protecting computer software utilizing an active coded hardware device
US4652990A (en) * 1983-10-27 1987-03-24 Remote Systems, Inc. Protected software access control apparatus and method
JPS60207957A (ja) * 1984-03-31 1985-10-19 Toshiba Corp デ−タ保護方式
US4862156A (en) * 1984-05-21 1989-08-29 Atari Corporation Video computer system including multiple graphics controllers and associated method
US4736419A (en) * 1984-12-24 1988-04-05 American Telephone And Telegraph Company, At&T Bell Laboratories Electronic lock system
CA1249661A (en) * 1985-04-26 1989-01-31 Benjamin F. Swanson Method and apparatus for determining saturation and permeability of a rock sample using mercury capillary pressure curves
EP0215291B1 (de) * 1985-09-10 1991-02-27 Hülsbeck &amp; Fürst GmbH. &amp; Co. KG Elektronische Schliesseinrichtung für Kraftfahrzeuge
US4755799A (en) * 1986-02-27 1988-07-05 James Romano Microcomputer controlled combination lock security system

Also Published As

Publication number Publication date
HK195A (en) 1995-01-13
NO862523L (no) 1986-12-29
AU636401B2 (en) 1993-04-29
AU599317B2 (en) 1990-07-19
US5070479A (en) 1991-12-03
FI92767C (fi) 1994-12-27
CA1270339A (en) 1990-06-12
DE3689574T2 (de) 1994-08-25
US5426762A (en) 1995-06-20
FI92767B (fi) 1994-09-15
EP0206704A2 (en) 1986-12-30
FI862598A0 (fi) 1986-06-18
EP0206704A3 (en) 1989-03-29
AU5881686A (en) 1987-01-08
DE3689574D1 (de) 1994-03-10
FI862598A (fi) 1986-12-25
HK1005196A1 (en) 1998-12-24
EP0206704B1 (en) 1994-01-26
NO177548C (no) 1995-10-04
NO862523D0 (no) 1986-06-23
AU6483490A (en) 1991-01-17
US4799635A (en) 1989-01-24

Similar Documents

Publication Publication Date Title
NO177548B (no) System for bestemmelse av en programvares riktighet i et databehandlingsapparat
US5004232A (en) Computer game cartridge security circuit
JP4598250B2 (ja) パチンコ機
US6106396A (en) Electronic casino gaming system with improved play capacity, authentication and security
AU605058B2 (en) An electronic gaming machine
US3764742A (en) Cryptographic identification system
US6149522A (en) Method of authenticating game data sets in an electronic casino gaming system
US5832206A (en) Apparatus and method to provide security for a keypad processor of a transaction terminal
JP4995241B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
JP4876155B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
US20240187251A1 (en) Interactive videogame verification using cryptographically protected transaction records
US7216235B1 (en) Drive/host locking system
TWI381734B (zh) 用於顯示裝置之防護系統與方法
JPH11221329A (ja) 遊技機
JPH0760412B2 (ja) 真偽判別素子、およびそれを用いた外部記憶装置
JPH0527891B2 (no)
KR100300510B1 (ko) 전자 기기 장치
JP2002085779A (ja) パチンコ遊技場装置
AU758257B2 (en) Casino gaming apparatus with gaming data check and dual memories
JP4876156B2 (ja) 電子機器、遊技機、主制御基板、周辺基板、認証方法および認証プログラム
RU2138847C1 (ru) Устройство для защиты вычислительной системы от несанкционированного доступа
GB2382172A (en) Software authentication device
JPH11146970A (ja) 遊技場におけるリモコン送受信装置
JPH0630495B2 (ja) 暗号化装置
JP2001306515A (ja) 情報提供装置

Legal Events

Date Code Title Description
MM1K Lapsed by not paying the annual fees