FI106495B - Verkkoelementti - Google Patents
Verkkoelementti Download PDFInfo
- Publication number
- FI106495B FI106495B FI990800A FI990800A FI106495B FI 106495 B FI106495 B FI 106495B FI 990800 A FI990800 A FI 990800A FI 990800 A FI990800 A FI 990800A FI 106495 B FI106495 B FI 106495B
- Authority
- FI
- Finland
- Prior art keywords
- driver
- network element
- data
- processing
- network
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Description
1 106495
Verkkoelementti
Esillä oleva keksintö koskee tiedonsiirtoa ja erityisesti tiedonsiirtoverkon 5 verkkoelementti, joka käsittää tiedonsiirtovälineet tiedon lähettämiseksi ja vastaanottamiseksi tiedonsiirtoverkosta, joka tieto käsittää yhden tai useampia suorituskäskyjä; käsittelyvälineet määrätyssä muodossa annetun tiedon käsittelemiseksi; ja ohjausvälineet vastaanotetun suorituskäskyn muokkaamiseksi käsittelyvälineiden edellyttämään muotoon.
10
Ajuriksi (englanniksi:driver) kutsutaan elektronisten laitteiden yhteydessä yleisesti toiminnallista yksikköä tai kriteeriä, joka käyttää tai ohjaa toista järjestelmää tai komponenttia. Tyypillisesti ajuri muodostuu ohjelmistomoduulista, joka sisältää tarvittavat toiminnallisuudet laitteistoyksikön kytkemiseksi järjestelmään määrätyn 15 laitteistorajapinnan välityksellä. Tämä tarkoittaa etupäässä laitteistoyksikköön liittyvää ohjelmakokonaisuutta, joilla järjestelmän antamat käskyt tulkitaan ja muokataan laitteistoyksikön ymmärtämään muotoon ja päinvastoin.
Langattomien päätelaitteiden käytön laajentuessa ääniviestinnästä muihin 20 mediamuotoihin ja datapalveluihin, ajureiden tarve päätelaitteeseen lisättävien toimintojen tukemiseksi kasvaa. Langattomille päätelaitteille on tyypillistä tavanomaisia päätelaitteita pienempi muistikapasiteetti ja suorituskyky, ja tämä vaikuttaa myös ajureiden järjestämiseen mainitussa ympäristössä.
25 Eräs esimerkki nopeasti kasvaneesta kehityssuunnasta on langattoman päätelaitteen avulla käytettävät älykorttisovellukset. Älykortin käyttöä varten päätelaitteeseen on liitetty kortinlukija, johon käyttäjä palvelutapahtuman yhteydessä asettaa älykortin. Älykortin käytön hallintaan liittyvät komennot käyttäjä antaa päätelaitteen käyttöliittymän avulla. Päätelaite hoitaa tarvittaessa 30 yhteyden sovellusta ylläpitävän palvelimeen ja käsittää ajurin, joka ohjaa palvelutapahtumaan liittyviä toimintoja sekä palvelimen että kortin suuntaan.
2 106495
Yleistyneitä älykorttisovelluksia ovat esimerkiksi elektroniset kukkarot, joihin liittyviä palveluntarjoajia on jo useampia. Tyypillisesti kullakin kukkarosovelluksella on oma matalan tason rajapintansa, joka on vielä erilainen sen mukaan mistä kukkarosovelluksesta on kyse tai minkä tyyppinen korttiyhdistelmä on kyseessä.
5 Yhdellä kortilla voi olla myös useampia älykorttisovelluksia, kuten esimerkiksi asiakaspalkkiosovellus, käytönseurantasovellus jne. Jo nyt voidaan nähdä, että sovellusten ja laitevalmistajien määrän kasvaessa erillisen ajurin järjestäminen monille eri vaihtoehdoille tulee aiheuttamaan ongelmia langattomassa päätelaitteessa tarvittavan ohjelmiston ja päätelaitteen muistintarpeen osalta.
10
Yleensä ajuri järjestetään langattomaan päätelaitteeseen konekielisenä koodina, jonka laitevalmistaja sisällyttää päätelaitteen ohjelmistoon jo tuotantovaiheessa. Tämä tarkoittaa sitä, että päätökset siitä mitä älykorttisovelluksia tuetaan tehdään jo varhaisessa vaiheessa ja oleellisesti laitevalmistajan toimesta. Eri 15 laitevalmistajat voivat tukea eri sovelluksia tai jopa saman laitevalmistajan eri mallisukupolvet voivat tukea eri sovelluksia, mikä lisää tuotevalikoiman kirjavuutta ja vaikeuttaa käyttäjien päätöksiä vaihtoehtoja tehtäessä. Päätelaitteen ohjelmisto on altis vanhentumiselle, ja ohjelmistoversioiden ylläpitäminen vaatii lisätyötä palvelun kaikilta osapuolilta. Joissakin kehittyneemmissä malleissa (esimerkiksi 20 Nokia 9110 Communicator) on mahdollisuus ladata konekielistä koodia jälkikäteen päätelaitteen muistiin, mutta tällaisessa ratkaisussa päädyttäisiin vastaavasti ylläpitämään tietoa kunkin laitevalmistajan tavasta järjestää koodin lataus jälkikäteen. Uuden palveluntarjoajan kannalta tekniikan tason mukainen järjestely on hankala, sillä palveluntarjoaja joutuu varsinaisen asiakasmyynnin lisäksi 25 huolehtimaan, että mahdollisimman monet laitevalmistajat ovat halukkaita tukemaan kyseistä palvelua.
Nyt on keksitty ratkaisu, jonka avulla voidaan muodostaa yhteys verkkoelementin ja verkkoelementissä toteutettavien sovellusten välille joustavalla ja silti 30 turvallisuuden ylläpitämisen edellyttämällä tavalla. Eräs edullinen suoritusmuoto on tuen aikaansaaminen uusille älykorttisovelluksille langattomassa päätelaitteessa tai siihen toiminnallisesti yhdistettävissä olevan lisälaitteen avulla.
106495 3
Keksinnön mukaisessa ratkaisussa verkkoelementin ohjausvälineet käsittävät ajurin, jonka alkuperä on varmennettavissa elektronisen allekirjoituksen avulla; ja yhden tai useampia käsittelyvälineiden toimintaa ohjaavia funktioita, jotka ovat käynnistettävissä vain ajurilla, jonka alkuperä on varmennettu elektronisen 5 allekirjoituksen avulla.
Keksinnössä hyödynnetään uusien järjestelmäalustojen tarjoamaa mahdollisuutta siirtää suurempia määriä tietoa, erityisesti ohjelmakoodia, radiorajapinnan yli. Keksinnön mukaisessa ratkaisussa tiettyyn sovellukseen liittyvä ajuri järjestetään 10 edullisesti palvelimelle, josta se on ladattavissa sovellusta toteuttavaan verkkoelementtiin. Ajuri toteutetaan tavukäännettynä koodina (byte compiled code) ja tallennetaan verkkoelementtiin (esimerkiksi päätelaitteen haihtumattomaan muistiin, edullisesti flash-muistiin). Ajuri tarjoaa vakiomuotoisen, ylemmän tason sovellusrajapinnan (High Level Application Programming 15 Interface, HL-API) verkkoelementissä toteutettaville sovelluskoodeille, jotka käyttövaiheessa edullisesti ladataan verkkoelementtiin. Älykorttiratkaisun yhteydessä tiedonsiirrossa älykortin suuntaan ajuri käyttää sovelluskohtaisen yhteyskäytännön mukaisia tietoyksiköitä (Application Protocol Data Unit, APDU). Päätelaitteelle on tallennettu, edullisesti konekielisenä, koodikirjasto, jonka 20 funktioita ajuri kutsuu tiedonsiirtotapahtumien yhteydessä antaen funktiolle parametrinä kulloinkin tarvittavan APDUn .
Turvallisuuden ylläpitämiseksi edullisesti ajurin julkaisija varustaa ajurin elektronisella allekirjoituksella, jonka avulla voidaan varmentaa se, että ladattava 25 tavukäännetty koodi on nimenomaan allekirjoittajan julkaisema ohjelmisto. Elektroninen allekirjoitus voidaan tarkistaa ajurin latausvaiheessa, tai haluttaessa esimerkiksi ajurin käynnistyksen yhteydessä. Jos ajurin alkuperää ei voida elektronisen allekirjoituksen avulla varmentaa, ajuri hylätään. Keksinnön mukaisessa ratkaisussa verkkoelementtiin edullisesti tuotantovaiheessa kiinteästi 30 tallennettu koodikirjasto käsittää ainakin kaksi osaa, vakiokirjaston ja suljetun kirjaston. Vakiokirjasta sisältää yhden tai useampia funktioita, joita voidaan kutsua mistä tahansa sovelluskoodista käsin. Suljetun kirjaston funktioita sen sijaan voi , 106495 4 hyödyntää vain soveliuskoodi, jonka elektroninen allekirjoitus on hyväksyttävästi tarkistettu.
Keksintö helpottaa uusien sovellusten tukemista verkkoelementeissä, esimerkiksi 5 älykorttisovellusten tuen järjestämistä liikkuviin päätelaitteisiin. Ajuri on edullisesti ladattavissa päätelaitteeseen ilmarajapinnan yli jolloin tavukäännetyn koodin ja vakiomuotoisen alemman tason rajapinnan ansiosta sama ajuri soveltuu käytettäväksi erilaisissa päätelaitteissa, valmistajasta tai edes päätelaitetyypistä riippumatta. Mahdollisuus käyttää päätelaitteeseen tallennettua ajuria, joka tarjoaa 10 vakiomuotoisen ylemmän tason rajapinnan pienentää sovelluskoodin kokoa ja siten samalla yhteysaikaa palvelutapahtumien yhteydessä. Ajuri voi itsessään olla suhteellisen suurikokoinen, mutta koska se on tallennettavissa päätelaitteelle, lataustoimenpide joudutaan tekemään harvoin. Sovellusohjelmoijan ei tarvitse huolehtia siitä miten sovellukset toteutetaan alemmalla tasolla tai miten 15 toteutukset poikkeavat toisistaan, tai välttämättä edes minkälaisella päätelaitteella tai päätelaitteen lisälaitteella sovellus on tarkoitus toteuttaa.
Keksinnön mukainen ratkaisu on turvallinen, sillä potentiaalisesti turvallisuutta vaarantavat toiminnot keskittyvät ajuriin, jonka julkaisija on aina todennettavissa 20 elektronisen allekirjoituksen avulla. Lisäksi myös niiden sovellusten toteutus, jossa ei tarvita suljetun kirjaston tietoyksiköiden avulla toteutettavia toiminnallisuuksia, hyötyy aikaansaadusta joustavuudesta. Organisaatioille, joille sovellusten tarjoaminen ei perinteisesti ole turvallisuusnäkökohtien valossa kovinkaan helppoa, tuo keksinnön tarjoama mahdollisuus sovellusten alkuperän 25 varmistamiseksi käytettävän ajurin allekirjoituksen perustella helpomman keinon turvallisuusvaatimuksiltaan vaativampien sovellusten aikaansaamiseksi.
Keksintöä selostetaan seuraavassa yksityiskohtaisesti viittaamalla oheisiin piirustuksiin, joissa: 30 kuviossa 1 on esitetty periaatekuva WAP-mallista (Wireless Application Protocol); kuvion 2 lohkokaavion avulla on havainnollistettu asiakkaana käytettävää langatonta päätelaitetta; 5 106495 kuviossa 3 tarkastellaan periaatetasolla keksinnön mukaista älykorttisovelluksen toteutusta toiminnallisuuksien mukaisesti esitettynä; kuviossa 4 on esitetty tarkemmin keksinnön mukainen järjestely älykorttisovelluksen toteuttamiseksi langattomassa päätelaitteessa; 5 kuviossa 5 on esitetty eräs keksinnön suoritusmuoto; ja kuviossa 6 on havainnollistettu järjestely yhteen käyttötarkoitukseen tarkoitettujen sovellusten toteuttamiseksi päätelaitteella.
WAP (Wireless Application Protocol) on WAP Forum -yhteenliittymän määrittämä 10 järjestely Internetin ja kehittyneiden datapalveluiden saannin toteuttamiseksi langattomissa päätelaitteissa. WAP tarjoaa periaatteessa skaalautuvan ja laajennettavissa olevan kokonaisuuden, jonka kerrosrakenteisessa arkkitehtuurissa tietty yhteyskäytäntökerros tarjoaa palveluita seuraavalle kerrokselle. WAP-arkkitehtuuri on hyvin lähellä Internetistä tunnettua WWW-15 mallia, mutta siihen on tehty langattoman ympäristön vaatimia optimointeja ja muutoksia. Kuviossa 1 on esitetty periaatekuva WAP-mallista, joka mahdollistaa asiakkaan ja palvelimen välisen neuvottelun palvelimella säilytettävän dataobjektin tarjoamiseksi lukijalle ymmärrettävässä muodossa. Asiakas 1 lähettää langattoman verkon 2 yli yhdyskäytävälle 3 koodatun palvelupyynnön, jonka 20 yhdyskäytävä 3 dekoodaa ja välittää Internetin 4 välityksellä palvelimelle 5. Palvelin 5 lähettää pyydetyn sisällön yhdyskäytävälle 3, joka koodaa sisällön ja lähettää sen palvelupyynnön tehneelle asiakkaalle 1. Vastaanotettu dataobjekti ' on tulostettavissa käyttäjän tarkasteltavaksi asiakkaan yhteydessä olevan käyttöliittymän välityksellä.
25
Kuvion 2 lohkokaavion havainnollistaa asiakkaana käytettävää langatonta päätelaitetta. Esitetyssä suoritusmuodossa päätelaitteena on käytetty matkaviestintä keksintöä käytettyyn laitetyyppiin tai termeihin rajoittamatta. Päätelaite voi olla mikä tahansa langaton tietoliikenneväline, kuten esimerkiksi 30 kaksisuuntainen hakulaite, langaton PDA-laite (Personal Digital Assistant), IP-protokollaa käyttävä WLAN-päätelaite (Wireless Local Area Network) tai kannettava tietokone, joka on varustettu laitteistoporttiin lisättävällä antennin 6 10649.5 käsittävällä matkaviestinverkkokortilla. Kuvion 2 lohkokaaviossa kuvattu matkaviestin sisältää radioteitse tapahtuvaa kommunikointia varten radioyksikön, joka käsittää tavanomaisesta matkaviestimestä tunnetun lähetinhaaran (käsittäen kanavakoodauksen, lomituksen, salauksen, moduloinnin ja lähetyksen suorittavat 5 toimintalohkot) 21, vastaanotinhaaran (käsittäen vastaanoton, demoduloinnin, salauksen purun, lomituksen purun sekä kanavadekoodauksen suorittavat toimintolohkot) 22, radioteitse tapahtuvaa lähetystä varten vastaanoton ja lähetyksen erottavan duplex-suodattimen 23 ja antennin 24. Päätelaitteen toimintaa kokonaisuudessaan ohjaa keskusyksikkö 25, joka myös toteuttaa 10 päätelaitteen yhteyskäytännön mukaiset toiminnallisuudet. Matkaviestin käsittää muistin 26, joka sisältää haihtuvaa ja haihtumatonta muistia, ja liityntäyksikön 27, joka käsittää yhden tai useampia laitteistoportteja sisäisten tai ulkoisten lisälaitteiden liittämiseksi matkaviestimeen. Käyttäjän kanssa suoritettavaa kommunikointia varten päätelaite käsittää käyttöliittymän, joka sisältää tyypillisesti 15 näppäimistön, näytön, mikrofonin ja kaiuttimen. Älykorttisovellusten yhteydessä liityntäyksikkö 27 käsittää kortinlukijan, jonka välityksellä keskusyksikkö 25 kommunikoi lukijaan asetetun kortin kanssa. Yhteys palvelimeen toteutetaan radioyksikön 21, 22, 23, 24 välityksellä. Keskusyksikkö 25 ohjaa älykorttisovelluksen toteutusta suorittamalla laitteen muistiin 26 ohjelmallisesti tai 20 laitteistorakentein järjestetyt toiminnot, ja edullisesti palvelimelta päätelaitteeseen ladatun sovelluskoodin toiminnot.
Kuviossa 2 esitettiin kuvion 1 mukaisena asiakkaana toimivan langattoman päätelaitteen rakenteelliset yksiköt, erityisesti älykorttisovellusten kannalta. 25 Kuviossa 3 esitellään vastaavasti keksinnön mukaisen ratkaisun toiminnalliset elementit. Kuvion 3 asiakas muodostuu langattomasta päätelaitteesta 10 ja älykortista 15. Älykorttisovelluksen käynnistyttyä päätelaitteelle 10 ladataan palvelimelta sovelluskoodi 31. Päätelaite 10 käsittää ajurin 32, joka ladatun sovelluskoodin käynnistämänä kutsuu laitteeseen tallennetusta koodikirjastosta 33 30 funktioita, jotka toteuttavat määrätyn tiedonsiirtoyhteyden määrätyn laiteyksikön, kuvion 3 esimerkissä älykortin 15, kanssa. Tiedonsiirtoyhteys toteutetaan 7 106495 funktioiden sisältämien, sovellusyhteyskäytännön mukaisten tietoyksiköiden (Application Protocol Data Unit, APDU) välityksellä.
Kuviossa 4 on esitetty tarkemmin keksinnön mukainen järjestely 5 älykorttisovelluksen toteuttamiseksi langattomassa päätelaitteessa. Päätelaitteelle on ladattu yksi tai useampia ajureita 41,42, 43, jotka on tallennettu päätelaitteelle tavukoodatussa muodossa. Tavukäännetty koodi tarkoittaa tässä yhteydessä lähdekoodista käännettyä ohjelmaa, jonka käskyt ovat suoritettavissa päätelaitteelle järjestetyllä virtuaalikoneella. Virtuaalikone tässä yhteydessä 10 tarkoittaa ohjelmistoa, joka sisältyy laitteen järjestelmäalustaan, ja joka mahdollistaa virtuaalikoneen tukemalla kielellä toteutetun, laitteelle ladatun tavukäännetyn koodin suorittamisen laitteessa. Tavukäännetyn koodin etuna on, että sovellusohjelmia voidaan kehittää huolehtimatta siitä, mikä sovelluksen käyttöympäristö on. Koodi on vakiomuotoista, joten sovellusten käyttäjäpäässä on 15 vain huolehdittava, että oikea virtuaalikone sisältyy laitteen järjestelmäalustaan.
Tunnetuin esimerkki tavukäännetystä koodista on www-ympäristöstä tunnettu Java. WAP-sovelluskerros WAE (Wireless Application Environment) tarjoaa rajoitettuun ympäristöön soveltuvan mikroselaimen, jossa tiedon kuvauskieli on 20 WML (Wireless Markup Language), ja ohjelmointikieli WMLScript. WMLScript on joiltakin ominaisuuksiltaan JavaScript-ohjelmointikielen kaltainen, mutta WMLScript on optimoitu toimimaan rajoitettua kaistanleveyttä käyttävissä muisti-ja laskentakapasiteetiltaan rajoitetuissa päätelaitteissa.
25 Ajurit 41, 42, 43 tarjoavat vakiomuotoisen ylemmän tason rajapinnan (High Level Application Programming Interface, HL-API) päätelaitteeseen käyttövaiheessa ladattavalle sovelluskoodille. Edullisesti samaan käyttötarkoituksiin tarkoitetuille eri sovelluksille määritetään yhteinen rajapinta, jolloin sovellusta ohjelmoivan osapuolen ei tarvitse välttämättä huolehtia sovellusten välisistä eroista, ja 30 ohjelmointi helpottuu. Esimerkiksi kuviossa 4 rajapinta 44 on elektroniseen kukkaroon liittyvien sovellusten rajapinta, rajapinta 45 on 8 106495 asiakaspalkkiosovelluksiin liittyvä rajapinta ja rajapinta 46 on potilastietosovelluksiin liittyvä rajapinta.
Päätelaitteeseen 10 tallennettu koodikirjasto käsittää kaksi osaa, vakiokirjaston 41 5 ja suljetun kirjaston 42. Koodikirjastot 41, 42 käsittävät edullisesti yhden tai useampia konekielisessä muodossa tallennettuja funktioita. Konekielinen koodi tässä yhteydessä tarkoittaa lähdekielisestä ohjelmasta kääntäjällä käsiteltyä tiedostoa, joka on valmis suoritettavaksi laitteen suorittimella laitteen käyttöjärjestelmän kutsusta. Keksinnön mukaisen vakiokirjaston 41 funktiot ovat 10 perusfunktioita (esimerkiksi käyttöliittymän toiminnot, matemaattiset funktiot), joita voi kutsua mikä tahansa päätelaitteeseen tallennettu tai ladattu ajuri.
Suljettu kirjasto 48 käsittää funktioita, jotka mahdollistavat läpinäkyvän tiedonsiirron sovelluskoodin ja älykortin 15 välillä. Tällainen funktio voi olla 15 esimerkiksi sendAPDU(CommandAPDU), jolle annetaan parametriksi sovelluskoodin HL-API-käskyn mukaisen ajurin sisältämä APDU. Ajurin ja älykortin välillä on siis geneerinen alemman tason rajapinta (Low Level Application Programming Interface, LL-API), ja oleellisesti mitkä tahansa käynnistettyyn sovellukseen liittyvät sovelluskoodin komennot välittyvät läpinäkyvästi ajurin läpi 20 älykortille ja päinvastoin. HL-API helpottaa sovelluskoodin laatimista, koska sovelluksen laatijan ei tarvitse välttämättä tuntea yksittäisten ratkaisujen detaljeja; LL-API vastaavasti mahdollistaa ajurista riippumattoman läpinäkyvän tiedonsiirtoyhteyden ajurin ja älykortin välillä.
25 On kuitenkin selvää, että esitetyn järjestelyn geneerisyys tällaisenaan sisältää potentiaalisen riskin epärehellisten sovellustarjoajien tai sovelluskoodin laatijoiden suhteen. Sovelluskoodin kirjoittaja voisi esimerkiksi sisällyttää koodiin käskyn siirtää jokaisen kukkarotransaktion yhteydessä pienen summan rahaa omalle tililleen. Turvallisuusriskin välttämiseksi keksinnön mukaisessa järjestelyssä 30 suljetun kirjaston funktioita voi kutsua vain ajuri, jonka alkuperä on elektronisen allekirjoituksen avulla varmistettu.
106495 9
Elektronisessa allekirjoituksessa hyödynnetään julkisen avaimen salaustekniikkaa, esimerkiksi RSA-algoritmia., lisäksi WAP-ympäristössä elektronisissa allekirjoituksissa hyödynnetään muun muassa elliptisiä käyriä. Eri allekirjoitustekniikoin toteutetut ratkaisut ovat keksinnön kannalta ekvivalentteja.
5 Seuraavassa esitetään kuvion 5 toimenpidekaavion avulla eräs mahdollinen suoritusmuoto. Allekirjoitettava viesti 51, eli tässä tapauksessa palvelimella oleva ajurikoodi käsitellään tiivistefunktiolla 52, joka määrätyn algoritmin (esimerkiksi MD5) avulla laskee viestistä määrämittaisen tiivisteen 53. Tiivistefunktio 52 on yksisuuntainen funktio, jonka tuottama tiiviste 53 muuttuu heti, jos alkuperäistä 10 viestiä 51 muutetaan vähänkin. Tiiviste 53 käsitellään salausfunktiolla 54 käyttäen salausavaimena ajurin julkistajan salaista avainta. Toimenpiteen tulos on elektroninen allekirjoitus 55, joka liitetään ajurikoodiin. Kun ajuri halutaan verifioida, allekirjoitus ensin avataan käyttäen ajurin julkistajan julkista avainta. Tämän jälkeen ajurikoodi käsitellään tiivistefunktiolla. Jos mainittu julkinen avain 15 avaa allekirjoituksen ja avattu merkkijono vastaa laskettua tiivistettä, tiedetään, että ajuri on peräisin halutusta lähteestä ja ettei koodia ole käsitelty julkistuksen jälkeen. Luottamusketju edellyttää olennaisesti julkisen avaimen siirtoa, ja aikaansaatu turvallisuustaso on erittäin hyvä.
20 Kuviossa 6 on havainnollistettu yksityiskohtaisemmin järjestely yhteen käyttötarkoitukseen tarkoitettujen sovellusten toteuttamiseksi päätelaitteella. Kuvion 6 tapauksessa kyseessä on elektroninen kukkaro, jossa jokaiselle kukkarosovelluksen tarjoajalle on edullisesti tarjoajan itsensä määrittämä ajuri 61, 62, 63, joka voidaan ladata päätelaitteelle tarvittaessa palvelimelta.
25 Maksutapahtumaan liittyvä sovelluskoodi voi kuitenkin HL-APIn ansiosta olla sama kaikille eri kukkarosovelluksille. Ladattu ajuri, jonka oikeellisuus on varmistettu elektronisen allekirjoituksen avulla, joko latauksen yhteydessä tai maksutapahtuman yhteydessä, pystyy kutsumaan sekä vakiokirjaston että suljetun kirjaston funktioita, ja siten ohjata maksutapahtuman suoritusta 30 turvallisuusvaatimukset ylläpitäen maksupalvelimen ja älykortin välillä.
10 10649,5
Seuraavassa tarkastellaan esimerkin avulla ajurin latausta päätelaitteelle. Käyttäjä on tehnyt sopimuksen älykorttiperusteista maksusovellusta tarjoavan yrityksen X kanssa. Yritys antaa käyttäjälle älykortin, joka sisältää elektronisen kukkarosovelluksen XCash. Saadakseen kyseiseen XCash-sovellukseen liittyvän 5 ajurin päätelaitteeseensa käyttäjä esimerkiksi: a) aktivoi WAP-puhelimensa, johon on liitetty ulkoinen älykortin lukija. Hän lähettää yrityksen X WAP-palvelimelle (esimerkiksi valitsemalla sopivan linkin) pyynnön ladata XCash-tuki WAP-puhelimeensa. Tai b) työntää uuden XCash-kortin WAP-puhelimen kortinlukijaan. Kortinlukija eli 10 päätelaite lähettää älykortille nollaussignaalin (Reset), ja nollauksen jälkeen älykortti vastaa lähettämällä nollausvastaussekvenssin (Answer To Reset, ATR) kortinlukijalle. ATR-vastauksessa saadun tiedon perusteella kortinlukija päättelee, että kyseessä on uusi maksukorttisovellus, ja käynnistää automaattisesti ajurin latauksen palvelimelta. Voidakseen käynnistää latauksen, päätelaite tarvitsee 15 osoitetiedon paikallistaakseen sen palvelimen, josta ajuri on ladattavissa. Osoite (esim. Universal Resource Locator, URL) voi olla tallennettuna esimerkiksi älykorttiin itseensä tai päätelaitteeseen. Eräs mahdollisuus on järjestää verkkoon palvelin, jolla ylläpidetään ajureita erilaisia älykorttisovelluksia varten, tai jonne tallennetaan tieto (esim. URL), jonka perusteella päätelaite löytää oikean ajurin.
20 WAP-yhteyskäytäntöä hyödyntäen käyttäjä lähettää palvelimelle pyynnön lähettää valittu ajuri WAP-puhelimelle. Palvelin lähettää ajurin, joka sisältää elektronisen allekirjoituksen. Elektroninen allekirjoitus voidaan tarkistaa tässä vaiheessa ennen ajurin tallennusta päätelaitteen haihtumattomaan muistiin (esimerkiksi välimuisti, 25 cache). Jos muistitila on täyttymässä, käyttäjää voidaan pyytää poistamaan vanhempia, käyttämättömäksi jääneitä ajureita.
Seuraavassa tarkastellaan esimerkin avulla ladatun ajurin käyttöä päätelaitteella. Käyttäjä selaa WAP-palvelimella olevaa sisältöä WAP-puhelimellaan ja kiinnostuu 30 yrityksen Y tarjoamasta maksullisesta WML-asiakirjasta. Ilmaistuaan halunsa maksaa kyseisen asiakirjan XCash-palveluna palvelin siirtää WMLScript-sovelluskoodin käyttäjän WAP-puhelimeen. WAP-puhelimen järjestelmäalusta 106496 11 sisältää WMLScript virtuaalikoneen, joka alkaa suorittaa ladattua WMLScript-sovelluskoodia. Käynnistääkseen EUR 10 suuruisen summan siirron sovelluskoodi antaa HL-API-käskyn EPurse.StartPayment(”XCash", "EUR", 10, "serverAddress") 5 joka aikaansaa päätelaitteelle tallennetun XCash-ajurin käynnistymisen. Ajuri ohjaa maksutapahtumia päätelaitteella kutsuen esimerkiksi vakiokirjaston funktiota kysymään käyttäjänityn nän välityksellä käyttäjän valtuutusta maksulle ja valtuutuksen saatuaan antaa sopivan APDUn XCash-kortille suljetun kirjaston funktion avulla. Vastaavasti ajuri ohjaa WAP-selaimen avulla yhteyttä yrityksen Y 10 ja mahdollisesti myös yrityksen X maksupalvelimeen hoitaen maksutapahtumaa verkon suuntaan tunnetulla tavalla. Kun yritys Y on saanut tiedon siitä, että maksutapahtuma on päättynyt, se siirtää halutun asiakirjan verkon yli käyttäjän WAP-puhelimeen.
15 Edellä esitetyissä suoritusmuodoissa LL-API on rajapinta, jonka läpi voidaan lähettää APDUja päätelaitteeseen liitettävälle prosessointivälineelle, tässä älykortille. Keksinnön mukainen ratkaisu on kuitenkin sovellettavissa myös muihin ympäristöihin, joissa yhteys sovellusohjelmasta sovellusta toteuttavalle suoritusvälineelle on aikaansaatava joustavasti mutta samalla riittävä 20 turvallisuustaso ylläpitäen. Suoritusväline voi olla verkkoelementtiin liitetty tai verkkoelementin sisäinen suoritin. LL-API voi vastaavasti olla esimerkiksi Socket API, jonka avulla avataan yhteys sovellusohjelman ja verkossa olevan palvelimen välille. Ajurin lataaminen verkosta mahdollistaa joustavuuden ja nopeuden uusien sovellusten yhteydessä ja LL-API takaa, että yhteys on toteutettavissa vain 25 ajurilla, jonka alkuperä on varmistettavissa. Eräs toinen suoritusmuoto on päätelaitteeseen liitettävän GPS-paikannuslaitteen (Global Positioning System) LL-API, joka mahdollistaa paikannusta hyödyntävien sovellusten joustavan käyttöönoton säilyttäen samalla mahdollisuuden kontrolloida paikannustietoa saavan sovellusohjelman alkuperän.
30 Tässä on esitetty keksinnön toteutusta ja suoritusmuotoja esimerkkien avulla. Alan ammattimiehelle on ilmeistä, ettei keksintö rajoitu edellä esitettyjen 106496 12 suoritusmuotojen yksityiskohtiin ja että keksintö voidaan toteuttaa muussakin muodossa poikkeamatta keksinnön tunnusmerkeistä. Näinollen esimerkiksi päätelaite voi olla muukin kuin edellä esitetty WAP-puhelin. Siten keksinnön toteutus- ja käyttömahdollisuuksia rajoittavatkin ainoastaan oheistetut 5 patenttivaatimukset, ja vaatimusten määrittelemät erilaiset keksinnön toteutusvaihtoehdot, myös ekvivalenttiset toteutukset kuuluvat keksinnön piiriin.
Claims (12)
10649s 13
1. Tiedonsiirtoverkon verkkoelementti, joka käsittää tiedonsiirtovälineet (21, 22, 23, 24) tiedon lähettämiseksi ja 5 vastaanottamiseksi tiedonsiirtoverkosta, joka tieto käsittää yhden tai useampia suorituskäskyjä; käsittelyvälineet (15, 25) määrätyssä muodossa annetun tiedon käsittelemiseksi; ohjausvälineet (25, 27, 28, 29) vastaanotetun yhden tai useamman 10 suorituskäskyn muokkaamiseksi käsittelyvälineiden edellyttämään muotoon; tunnettu siitä, että mainitut ohjausvälineet käsittävät ajurin (41, 42, 43), jonka alkuperä on varmennettavissa elektronisen allekirjoituksen avulla; yhden tai useampia käsittelyvälineiden (15, 25) toimintaa ohjaavia funktioita 15 1(48), jotka ovat käynnistettävissä vain ajurilla (41, 42, 43), jonka alkuperä on varmennettu elektronisen allekirjoituksen avulla.
2. Patenttivaatimuksen 1 mukainen verkkoelementti, tunnettu siitä, että mainittu verkkoelementti on langaton päätelaite. 20
3. Patenttivaatimuksen 2 mukainen verkkoelementti, tunnettu siitä, että mainittu päätelaite sisältää välineet (28) sovellusprosessointivälineen (15) liittämiseksi päätelaitteeseen.
4. Patenttivaatimuksen 3 mukainen verkkoelementti, tunnettu siitä, että mainitut käsittelyvälineet käsittävät sovellusprosessointivälineen (15).
5. Patenttivaatimuksen 1 mukainen verkkoelementti, tunnettu siitä, että mainittu ajuri (41,42, 43) säilytetään verkkoelementissä tavukäännettynä koodina. 30
6. Patenttivaatimuksen 5 mukainen verkkoelementti, tunnettu siitä, että mainittu elektroninen allekirjoitus käsittää mainitun koodin julkaisijan salaisella avaimella ,4 106496 käsitellyn merkkijonon, jolloin ajurin alkuperän varmennus tapahtuu purkamalla merkkijonon salaus koodin julkaisijan julkisella avaimella.
7. Patenttivaatimuksen 6 mukainen verkkoelementti, tunnettu siitä, että mainittu 5 merkkijono käsittää mainitusta koodista määrätyllä tiivistefunktiolla lasketun tiivisteen.
8. Patenttivaatimuksen 1 mukainen verkkoelementti, tunnettu siitä, että määrättyyn käyttötarkoitukseen liittyvä ajuri (61) on järjestetty vastaanottamaan 10 suorituskäsky määrätyssä, käyttötarkoituksen mukaan määräytyvässä muodossa.
9. Tiedonsiirtoverkko, jonka verkkoelementti (10, 5) käsittää tiedonsiirtovälineet (21, 22, 23, 24) tiedon lähettämiseksi ja 15 vastaanottamiseksi tiedonsiirtoverkosta, joka tieto käsittää yhden tai useampia suorituskäskyjä; käsittelyvälineet (15, 25) määrätyssä muodossa annetun tiedon käsittelemiseksi; ohjausvälineet (25, 27, 28, 29) vastaanotetun suorituskäskyn 20 muokkaamiseksi käsittelyvälineiden edellyttämään muotoon; tunnettu siitä, että mainitut ohjausvälineet käsittävät ajurin (41, 42, 43), jonka alkuperä on varmennettavissa elektronisen t allekirjoituksen avulla; yhden tai useampia käsittelyvälineiden (15, 25) toimintaa ohjaavia funktioita 25 (48), jotka ovat käynnistettävissä vain ajurilla (41, 42, 43), jonka alkuperä on varmennettu elektronisen allekirjoituksen avulla. 1 - - 10. Patenttivaatimuksen 9 mukainen tiedonsiirtoverkko, tunnettu siitä, että mainittu verkkoelementti on langaton päätelaite (10). 30
11. Patenttivaatimuksen 9 mukainen tiedonsiirtoverkko, tunnettu siitä, että mainittu verkkoelementti on verkkopalvelin (5). 15 10649b
12. Menetelmä tiedon käsittelemiseksi, jossa menetelmässä: lähetetään ja vastaanotetaan tiedonsiirtoverkosta tieto, joka käsittää yhden tai useampia suorituskäskyjä; 5 muokataan vastaanotettu suorituskäsky määrättyyn muotoon; käsitellään määrätyssä muodossa oleva tieto; tunnettu siitä, että muokataan suorituskäsky ajurilla, jonka alkuperä on varmennettavissa elektronisen allekirjoituksen avulla; 10 ohjataan käsittelyä funktioilla, jotka ovat käynnistettävissä vain ajurilla, jonka alkuperä on varmennettu elektronisen allekirjoituksen avulla. 15 20 10649b 16
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI990800A FI106495B (fi) | 1999-04-12 | 1999-04-12 | Verkkoelementti |
PCT/FI2000/000272 WO2000062174A1 (en) | 1999-04-12 | 2000-03-30 | Apparatus and method for authentication of device drivers |
AU38209/00A AU3820900A (en) | 1999-04-12 | 2000-03-30 | Apparatus and method for authentication of device drivers |
EP00917087A EP1171822A1 (en) | 1999-04-12 | 2000-03-30 | Apparatus and method for authentication of device drivers |
US09/546,439 US7315942B1 (en) | 1999-04-12 | 2000-04-10 | Network element and method for controlling access to low level computer system services |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI990800A FI106495B (fi) | 1999-04-12 | 1999-04-12 | Verkkoelementti |
FI990800 | 1999-04-12 |
Publications (3)
Publication Number | Publication Date |
---|---|
FI990800A0 FI990800A0 (fi) | 1999-04-12 |
FI990800A FI990800A (fi) | 2000-10-13 |
FI106495B true FI106495B (fi) | 2001-02-15 |
Family
ID=8554396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FI990800A FI106495B (fi) | 1999-04-12 | 1999-04-12 | Verkkoelementti |
Country Status (5)
Country | Link |
---|---|
US (1) | US7315942B1 (fi) |
EP (1) | EP1171822A1 (fi) |
AU (1) | AU3820900A (fi) |
FI (1) | FI106495B (fi) |
WO (1) | WO2000062174A1 (fi) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020032750A1 (en) * | 2000-05-16 | 2002-03-14 | Kanefsky Steven T. | Methods and systems for searching and managing information on wireless data devices |
US8606891B2 (en) * | 2004-09-10 | 2013-12-10 | Freestyle Technology Pty Ltd | Client processor device for building application files from file fragments for different versions of an application |
KR101048729B1 (ko) * | 2004-06-30 | 2011-07-14 | 프랑스 텔레콤 | 다목적 전자 결제 방법 및 시스템 |
US8145908B1 (en) * | 2004-10-29 | 2012-03-27 | Akamai Technologies, Inc. | Web content defacement protection system |
US20060230128A1 (en) * | 2004-12-22 | 2006-10-12 | Lg Electronics Inc. | Method and apparatus interfacing for controlling a device between an application and a library of a master on home network |
US7690579B2 (en) * | 2006-07-13 | 2010-04-06 | Research In Motion Limited | Answer to reset (ATR) pushing |
EP2085888A1 (en) * | 2008-01-29 | 2009-08-05 | Research In Motion Limited | Optimized smart card driver performance |
JP4546551B2 (ja) * | 2008-03-18 | 2010-09-15 | フェリカネットワークス株式会社 | 情報処理装置、情報処理方法、プログラムおよび情報処理システム |
JP5370253B2 (ja) * | 2010-04-27 | 2013-12-18 | ブラザー工業株式会社 | 制御装置、プログラム、及び管理方法 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5302947A (en) * | 1992-07-31 | 1994-04-12 | Motorola, Inc. | Method and apparatus for loading a software program from a radio modem into an external computer |
JPH08502378A (ja) * | 1992-11-16 | 1996-03-12 | マイクロソフト コーポレイション | 装置ドライバをロードする方法 |
US6058478A (en) * | 1994-09-30 | 2000-05-02 | Intel Corporation | Apparatus and method for a vetted field upgrade |
GB2301744B (en) | 1995-06-02 | 2000-01-12 | Dsc Communications | Software download for a subscriber terminal of a wireless telecommunications system |
US5870610A (en) * | 1996-06-28 | 1999-02-09 | Siemens Business Communication Systems, Inc. | Autoconfigurable method and system having automated downloading |
AU3906497A (en) * | 1996-07-31 | 1998-02-20 | Verifone, Inc. | A system, method and article of manufacture for secure, stored value transactions over an open communication network utilizing an extensible, flexible architecture |
FI104222B1 (fi) | 1996-10-03 | 1999-11-30 | Nokia Mobile Phones Ltd | Modulaarinen matkaviestinjärjestelmä |
US6347398B1 (en) * | 1996-12-12 | 2002-02-12 | Microsoft Corporation | Automatic software downloading from a computer network |
US5974250A (en) * | 1996-12-13 | 1999-10-26 | Compaq Computer Corp. | System and method for secure information transmission over a network |
US5935249A (en) * | 1997-02-26 | 1999-08-10 | Sun Microsystems, Inc. | Mechanism for embedding network based control systems in a local network interface device |
US6029196A (en) * | 1997-06-18 | 2000-02-22 | Netscape Communications Corporation | Automatic client configuration system |
US6157966A (en) * | 1997-06-30 | 2000-12-05 | Schlumberger Malco, Inc. | System and method for an ISO7816 complaint smart card to become master over a terminal |
US6230194B1 (en) * | 1997-07-14 | 2001-05-08 | Freegate Corporation | Upgrading a secure network interface |
US6009524A (en) * | 1997-08-29 | 1999-12-28 | Compact Computer Corp | Method for the secure remote flashing of a BIOS memory |
US6148387A (en) * | 1997-10-09 | 2000-11-14 | Phoenix Technologies, Ltd. | System and method for securely utilizing basic input and output system (BIOS) services |
AU3465499A (en) | 1998-04-14 | 1999-11-01 | Qualcomm Incorporated | Method and system for interfacing a wireless communication device with an accessory |
US6223284B1 (en) * | 1998-04-30 | 2001-04-24 | Compaq Computer Corporation | Method and apparatus for remote ROM flashing and security management for a computer system |
EP0961248A3 (en) * | 1998-05-27 | 2004-06-30 | Diebold, Incorporated | Automated banking terminal with security features such as for example signed applets |
US6250557B1 (en) * | 1998-08-25 | 2001-06-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and arrangements for a smart card wallet and uses thereof |
US6330670B1 (en) * | 1998-10-26 | 2001-12-11 | Microsoft Corporation | Digital rights management operating system |
US6609199B1 (en) * | 1998-10-26 | 2003-08-19 | Microsoft Corporation | Method and apparatus for authenticating an open system application to a portable IC device |
US6591418B2 (en) * | 1999-03-26 | 2003-07-08 | Dell U.S.A., L.P. | Factory software management system |
US6493594B1 (en) * | 1999-06-04 | 2002-12-10 | Lucent Technologies Inc. | System and method for improved software configuration and control management in multi-module systems |
US6513159B1 (en) * | 2000-03-28 | 2003-01-28 | Intel Corporation | Platform intelligent installer |
-
1999
- 1999-04-12 FI FI990800A patent/FI106495B/fi not_active IP Right Cessation
-
2000
- 2000-03-30 AU AU38209/00A patent/AU3820900A/en not_active Abandoned
- 2000-03-30 WO PCT/FI2000/000272 patent/WO2000062174A1/en not_active Application Discontinuation
- 2000-03-30 EP EP00917087A patent/EP1171822A1/en not_active Withdrawn
- 2000-04-10 US US09/546,439 patent/US7315942B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US7315942B1 (en) | 2008-01-01 |
FI990800A0 (fi) | 1999-04-12 |
WO2000062174A1 (en) | 2000-10-19 |
FI990800A (fi) | 2000-10-13 |
EP1171822A1 (en) | 2002-01-16 |
AU3820900A (en) | 2000-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7003663B2 (en) | Distribution of deployment information for remote applications | |
JP4303284B2 (ja) | セキュリティエレメントにコマンドを出す方法及び移動端末 | |
RU2488888C2 (ru) | Способ доступа к приложениям в защищенной мобильной среде | |
US8942672B2 (en) | Mobile integrated distribution and transaction system and method for NFC services, and a mobile electronic device thereof | |
Coskun et al. | Professional NFC application development for android | |
JP4524059B2 (ja) | 無線通信網において安全なデータ転送を実行する方法と装置 | |
JP5547803B2 (ja) | メッセージをセキュアエレメントへ送信するための方法、サーバ、およびコンピュータプログラム | |
US7117364B1 (en) | System and method for downloading application components to a chipcard | |
US7278582B1 (en) | Hardware security module (HSM) chip card | |
US6807561B2 (en) | Generic communication filters for distributed applications | |
KR100883699B1 (ko) | 무선 장치 동작 환경에서 비검증된 프로그램들의 실행 | |
US8958746B2 (en) | Mobile integrated distribution and transaction system and method for NFC services, and a mobile electronic device thereof | |
FI106495B (fi) | Verkkoelementti | |
US20100005476A1 (en) | Mobile electronic device including a portable application and a secured module able to communicate with each other, and associated communication method | |
CN113672403B (zh) | 信息系统中的接口调用方法及接口调用装置、管理信息系统 | |
CN114329358A (zh) | 应用签名方法、系统、交易终端及服务平台 | |
CN107066888B (zh) | 可扩展的可信用户接口、方法和电子设备 | |
JP4236830B2 (ja) | アップロード機能付き記憶装置 | |
Husemann | Standards in the smart card world | |
KR100879909B1 (ko) | Scws를 이용한 애플릿 서비스 제공 시스템 및 제공 방법 | |
Markantonakis et al. | Multi-application smart card platforms and operating systems | |
Faupel | Status of Industry Work on Signed Mobile Code | |
WO2015008167A2 (en) | A moblie integrated distribution and transaction system and method for nfc services, and a mobile electronic device thereof | |
KR20150105271A (ko) | 악성 코드 차단 방법, 커널 레벨에서 악성 코드를 차단하는 휴대형 단말기 및 악성 코드 차단 방법의 프로그램을 저장하는 다운로드 서버 | |
KR100611119B1 (ko) | Drm 기반의 wipi 컨텐츠 서비스 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MA | Patent expired |