Sattuuko tietämään toimivaa ratkaisumallia

Pitäisi ratkaista lisenssitiedoston laadinta siten että yritys B voi jaella lisenssejä monille muille yrityksille C, D, E, ... , X, Y, Z yrityksen A antamin valtuuksin. Yritys A haluaa säilyttää ohjat omissa käsissään ja yritys B käytännössä jakelee asiakkaille vain näille sopivat lisenssit. Yritys A haluaa maksut perustuen lisenssien määriin ja lisenssoituihin käyttäjämääriin. Yritys B ei saisi pystyä laatimaan sellaista lisenssitiedostoa jonka lisensoitu ohjelma hyväksyy ja josta yritys A ei ole tietoinen.

Erikoisesti askarruttaa että jos yritys A antaa yritykselle B jonkinlaiset lisenssipohjat joista B tekee lopulliset lisenssitiedostot niin miten estetään yritystä B käyttämästä samaa lisenssipohjaa usealle yritykselle, esim. C, D ja E jolloin se pulittaisi A:lle vain yhdestä lisenssistä vaikka onkin myynyt kolme.

Eli miten olisi mahdollista tehdä lisenssipohjasta kertakäyttöinen niin ettei siitä tehtyä lisenssitiedostoa voi käyttää eri loppukäyttäjät, vaan ainoastaan yksi yritys?

Tämä pitäisi mielellään ratkaista ilman verkkoyhteyttä yrityksen A palvelimelle.

Lisensoitu ohjelma siis on sellainen että se tarkistaa lisenssin jossa on yritykseltä A tuleva yleinen osa (lisenssipohja) ja yrityksen B laatima asiakaskohtainen osa. Oletetaan että lisensoidun ohjelman muuttaminen on sopimuksella kielletty. Miten voisi varmistaa että jokainen lisenssitiedosto on laadittu eri lisenssipohjasta niin että A on tietoinen kaikista myymistään lisensseistä vaikka ei tiedä kenelle ne on myyty? Jokaisen asiakkaalla pyörivän lisenssipohjan pitäisi siis olla uniikki.
3256
Äänestä

Muut lukivat myös

Vastaukset 3

Vanhimmat

Pakko olisi varmentaa verkkoyhteydellä.. Muuten tuon voi aina kiertää.

Äänestä
  • Onneksi tämä ei ole välittömästi tarpeen koska lisenssien laadinta on vielä kokonaan yrityksen A hallussa ja yrityksen B käyttöä vain spekuloidaan. Juridisessa mielessä sen tietysti saisi pitäväksi jos yrityksen B kanssa nimenomaan sovitaan että samaa lisenssipohjaa ei saa käyttää monelle eri yritykselle.

    Askarrutti vaan tuo kysymys että löytyisikö jokin mystinen ihmeviritelmä jonka perusteella monet identtiset lisensoidut ohjelmat voisivat erilaisissa kohdeympäristöissään yleispätevästi todeta että lisenssissä on uniikki ei-yrityskohtainen lisenssipohja jota ei ole missään muualla käytössä. Mutta ei sellainen ihmeratkaisu ainakaan pienellä työllä taida löytyä.

    Tietysti ratkaisu olisi olemassa jos lisenssipohja olisi yrityskohtainen, mutta lisenssipohjan idea on juuri siinä että lisenssipohja on yleiskäyttöinen. Yritys A myy ne yritykselle B eikä niistä tarvitse sen enempäää murehtia. B hoitaa yhteydet asiakkaisiin.

    Hmmmmm ... mutta jos yrityksellä A olisi jonkinlainen automaattinen palvelu jota yritys B voi käyttää ja tämä palvelu allekirjoittaisi lisenssipohjan ja asiakastietojen yhdistelmän yrityksen A hallussa olevalla salaisella avaimella jonka julkinen vastinpari läytyy lisensoidusta ohjelmasta niin että se voi tarkistaa allekirjoituksen niin silloin ... tätäpä täytyy miettiä, onko liian hankala ratkaisu. Äkkiä katsoen näyttäisi toimivalta ja voi olla että se täytyy ottaa lisenssitiedoston laadinnassa ja rakenteessa huomioon jo tässä vaiheessa vaikka yritystä B ei vielä ole olemassa.

    Äänestä

  • ECDSA jyrää meitin? kirjoitti:

    Onneksi tämä ei ole välittömästi tarpeen koska lisenssien laadinta on vielä kokonaan yrityksen A hallussa ja yrityksen B käyttöä vain spekuloidaan. Juridisessa mielessä sen tietysti saisi pitäväksi jos yrityksen B kanssa nimenomaan sovitaan että samaa lisenssipohjaa ei saa käyttää monelle eri yritykselle.

    Askarrutti vaan tuo kysymys että löytyisikö jokin mystinen ihmeviritelmä jonka perusteella monet identtiset lisensoidut ohjelmat voisivat erilaisissa kohdeympäristöissään yleispätevästi todeta että lisenssissä on uniikki ei-yrityskohtainen lisenssipohja jota ei ole missään muualla käytössä. Mutta ei sellainen ihmeratkaisu ainakaan pienellä työllä taida löytyä.

    Tietysti ratkaisu olisi olemassa jos lisenssipohja olisi yrityskohtainen, mutta lisenssipohjan idea on juuri siinä että lisenssipohja on yleiskäyttöinen. Yritys A myy ne yritykselle B eikä niistä tarvitse sen enempäää murehtia. B hoitaa yhteydet asiakkaisiin.

    Hmmmmm ... mutta jos yrityksellä A olisi jonkinlainen automaattinen palvelu jota yritys B voi käyttää ja tämä palvelu allekirjoittaisi lisenssipohjan ja asiakastietojen yhdistelmän yrityksen A hallussa olevalla salaisella avaimella jonka julkinen vastinpari läytyy lisensoidusta ohjelmasta niin että se voi tarkistaa allekirjoituksen niin silloin ... tätäpä täytyy miettiä, onko liian hankala ratkaisu. Äkkiä katsoen näyttäisi toimivalta ja voi olla että se täytyy ottaa lisenssitiedoston laadinnassa ja rakenteessa huomioon jo tässä vaiheessa vaikka yritystä B ei vielä ole olemassa.

    Minusta tuo viimeisin skenaario olisi ihan soiva peli. Ongelmana lähinnä se että yrityksellä A täytyy olla palvelu julkisessa ip-osoitteessa ja palvelulla luku- ja kirjoitusoikeudet levylle. Ei nähdäkseni voi sallia yritykselle B saman lisenssipohjan allekirjoitusta eri tiedoilla, vaan jokaisen allekirjoituksen on perustuttava eri lisenssipohjaan. Muuten vaarana että tietoa salaisesta avaimesta vuotaa jos B voi rajattomasti kokeilla allekirjoituksia itse valitsemillaan tiedoilla. Palvelulle tarjottu lisenssipohja lienee parasta verifioida ennen allekirjoitusta.

    Näkisin sen kokonaisuutena näin että A laatii lisenssipohjat joissa on uniikki sarjanumero ja lisenssin yleiset tiedot allekirjoitettuna salaisella avaimella ECDSA-menetelmällä. Tuon salaisen avaimen julkinen vastinpari on lisensoidussa ohjelmassa joka voi signatuurin verifioimalla varmistaa että lisenssipohja on peräisin yrityksestä A. Yritykselle B ei luovuteta mitään salaisia avaimia, vaan se käyttää saamiaan lisenssipohjia ja yritys A:n julkisessa IP:ssä tarjoamaa verkkopalvelua. B tietää lisenssin asiakaskohtaiset tiedot koska se hoitaa yhteydet asiakkaisiin ja se allekirjoittaa A:n tarjoamassa palvelussa lisenssipohjan ja asiakastietojen yhdistelmän. Palvelu käyttää toista salaista avainta jonka julkinen vastinpari on lisensoidussa ohjelmassa. Sen avulla lisensoitu ohjelma voi ajonaikaisesti todeta että lisenssipohjan ja asiakastietojen yhdistelmä on A:n tarjoamassa palvelussa allekirjoitettu. Lisenssin tärkeimpiä ominaisuuksia rajoittaa lisenssipohja jota B ei pääse muokkaamaan. Lisenssitietojen ei tarvitse olla millään tavalla kryptattuja koska allekirjoitus tarkistamalla voidaan tarkistaa ovatko lisenssitiedoston tiedot autorisoituja tietoja vaiko ei. Eri lisenssitiedostojen lisenssipohjaa ja asiakastietoja ei voi erottaa toisistaan ja copypasteamalla luoda uusia paranneltuja lisenssitiedostoja koska tiedot on sidottu yhteen digitaalisella allekirjoituksella joka on hyvin herkkä allekirjoitettavien tietojen muutoksille ja voi tuottaa hyvin suuren määrän erilaisia allekirjoituksia.

    Kaikkein selkein turvallisuusriski on tietysti lisenssitarkistuksen poistaminen lisensoidusta ohjelmasta mutta sen estämiseksi ei voi tehdä paljon muuta kuin juridisesti sitovan sopimuksen ohjelman käyttäjän kanssa.

    Äänestä

Kommentoi aloitusta


onko ees olemassa kirjoitti:

Pitäisi ratkaista lisenssitiedoston laadinta siten että yritys B voi jaella lisenssejä monille muille yrityksille C, D, E, ... , X, Y, Z yrityksen A antamin valtuuksin. Yritys A haluaa säilyttää ohjat omissa käsissään ja yritys B käytännössä jakelee asiakkaille vain näille sopivat lisenssit. Yritys A haluaa maksut perustuen lisenssien määriin ja lisenssoituihin käyttäjämääriin. Yritys B ei saisi pystyä laatimaan sellaista lisenssitiedostoa jonka lisensoitu ohjelma hyväksyy ja josta yritys A ei ole tietoinen.

Erikoisesti askarruttaa että jos yritys A antaa yritykselle B jonkinlaiset lisenssipohjat joista B tekee lopulliset lisenssitiedostot niin miten estetään yritystä B käyttämästä samaa lisenssipohjaa usealle yritykselle, esim. C, D ja E jolloin se pulittaisi A:lle vain yhdestä lisenssistä vaikka onkin myynyt kolme.

Eli miten olisi mahdollista tehdä lisenssipohjasta kertakäyttöinen niin ettei siitä tehtyä lisenssitiedostoa voi käyttää eri loppukäyttäjät, vaan ainoastaan yksi yritys?

Tämä pitäisi mielellään ratkaista ilman verkkoyhteyttä yrityksen A palvelimelle.

Lisensoitu ohjelma siis on sellainen että se tarkistaa lisenssin jossa on yritykseltä A tuleva yleinen osa (lisenssipohja) ja yrityksen B laatima asiakaskohtainen osa. Oletetaan että lisensoidun ohjelman muuttaminen on sopimuksella kielletty. Miten voisi varmistaa että jokainen lisenssitiedosto on laadittu eri lisenssipohjasta niin että A on tietoinen kaikista myymistään lisensseistä vaikka ei tiedä kenelle ne on myyty? Jokaisen asiakkaalla pyörivän lisenssipohjan pitäisi siis olla uniikki.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu