APK - Android - digitaalisen allekirjoituksen hallinta ?

Käyttämäni ohjelmistotyöväline toimii Android -sovellusta tuottaessa tavalla, joka on tietysti erittäin miellyttävä ensimmäistä Android -sovellusta tehtäessä, kun se tavallaan "käyttäjän puolesta" huolehtii automaattisesti luodun APK -sovellusasennuspaketin digitaalisesta allekirjoituksesta.

Mutta vaikka tuo on ensimmäistä Android -sovellusta tehtäessä kätevää, niin jos sovellus on tarkoitus laittaa yleiseen jakeluun esim. Google Play:n kautta, niin mielestäni tuo EI OLE se paras tapa.

Koska käsittääkseni yksi "Android Storage" -luokista on sellainen, että vain sama sovellus näkee luodut tiedostot ja pääsee niihin käsiksi.

Jos luodaan vaikkapa pankkisovellus, niin tämä saattaa olla tietoturvan kannalta hyvä asia, että muut sovellukset eivät edes salatussa muodossakaan pääse käsiksi pankkisovelluksen tallentamiin kirjautumistietoihin.

Mutta: kun tuo perustuu APK -tiedoston digitaaliseen allekirjoittamiseen, niin pitäisihän salausavaimista tehdä varmuuskopio turvalliseen paikkaan, niin että voin palauttaa salausavaimet varmuuskopiolta, jos tietokone varastetaan tai menee niin pahasti rikki, ettei kiintolevyllä oleviin tiedostoihin enää pääse käsiksi.

Entä, jos otan tuon automaattisen digitaaliseen allekirjoittamisen pois käytöstä, löytyykö jostain sovellusta, jolla voi tehdä digitaaliseen allekirjoittamisen APK -tiedosoon Android -käyttöjärjestelmän hyväksymällä tavalla siten, että saa itse hallita niitä salausavaimia, jolloin niistä voi myös tehdä varmuuskopion ja laittaa sen turvalliseen paikkaan ?

Salausavaimissa liika automatisointi on pahasta, koska tällöin esim. kiintolevyn rikkoutuminen johtaa tilanteeseen, jossa niitä salausavaimia ei löydy enää mistään !
2335
Äänestä

Muut lukivat myös

Vastaukset 2

Vanhimmat

Yleensä lähdekoodit on erillään softapaketeista ja apk on softapaketti. Voidaan lisätä versionhallintaan vaikka release-tagi ja samalla tagilla pistää allekirjoitusavain versiohallintaan, jolla apk on allekirjoitettu. Yleensä ottaen automaatio tekee tuon eli avaimista ei tarvitse missään vaiheessa huolehtia itse - ne vain on siellä! Käännöksen yhteydessä ilmestyy avaimet ja menee versiohallintaan.
Yleensä nuo julkaisuavaimet on erillään kehitysavaimista, jolloin voidaan tarkistaa esim. vuotaneesta ohjelmasta, kenen kehittäjän koneelta vuoto on tapahtunut. Mutta eri paikoissa toimitaan tietysti eri tavoilla..

Äänestä
  • Siis tarkoitus olisi, että olisi vaikkapa Windows -komentoriviohjelma SIGNAPK.exe

    ja sitten näin:

    SIGNAPK allekirjoittamaton.APK allekirjoitettu.APK -keysource Z:\APK_SIGNING_KEY.dat

    Eli tuo SIGNAPK -ohjelma lukee allekirjoitusavaimen tiedostosta Z:\APK_SIGNING_KEY.dat, ja käyttää sitä tiedoston allekirjoittamaton.APK digitaaliseen allekirjoittamiseen ja laittaa allekirjoitetun version kiintolevylle tiedostoon allekirjoitettu.APK jonka voi sitten uploadata vaikkapa Google Play -palveluun.

    Tai, jos en käytä Google Play -palvelua ohjelmani jakeluun niin voisin vaihtoehtoisesti koodata ohjelmani niin että tietyssä kohtaa apk -tiedostossa on pelkkää nollaa peräkkäin, mutta ennen allekirjoittamista voisin apuohjelmalla lisätä vaikkapa käyttäjäkohtaisen avaimen ja sitten allekrjoittaa tuon yhdelle käyttäjälle räätälöidyn version, ja tarjota ko. käyttäjälle suoran APK -tiedoston latauslinkin.

    Nythän jos kaikki lataavat täsmälleen saman APK:n Google Playsta, niin ei siinä voi olla mitään käyttäjäkohtaista avainta kun se on kaikille sama.

    Äänestä

Kommentoi aloitusta


Anonyymi kirjoitti:

Käyttämäni ohjelmistotyöväline toimii Android -sovellusta tuottaessa tavalla, joka on tietysti erittäin miellyttävä ensimmäistä Android -sovellusta tehtäessä, kun se tavallaan "käyttäjän puolesta" huolehtii automaattisesti luodun APK -sovellusasennuspaketin digitaalisesta allekirjoituksesta.

Mutta vaikka tuo on ensimmäistä Android -sovellusta tehtäessä kätevää, niin jos sovellus on tarkoitus laittaa yleiseen jakeluun esim. Google Play:n kautta, niin mielestäni tuo EI OLE se paras tapa.

Koska käsittääkseni yksi "Android Storage" -luokista on sellainen, että vain sama sovellus näkee luodut tiedostot ja pääsee niihin käsiksi.

Jos luodaan vaikkapa pankkisovellus, niin tämä saattaa olla tietoturvan kannalta hyvä asia, että muut sovellukset eivät edes salatussa muodossakaan pääse käsiksi pankkisovelluksen tallentamiin kirjautumistietoihin.

Mutta: kun tuo perustuu APK -tiedoston digitaaliseen allekirjoittamiseen, niin pitäisihän salausavaimista tehdä varmuuskopio turvalliseen paikkaan, niin että voin palauttaa salausavaimet varmuuskopiolta, jos tietokone varastetaan tai menee niin pahasti rikki, ettei kiintolevyllä oleviin tiedostoihin enää pääse käsiksi.

Entä, jos otan tuon automaattisen digitaaliseen allekirjoittamisen pois käytöstä, löytyykö jostain sovellusta, jolla voi tehdä digitaaliseen allekirjoittamisen APK -tiedosoon Android -käyttöjärjestelmän hyväksymällä tavalla siten, että saa itse hallita niitä salausavaimia, jolloin niistä voi myös tehdä varmuuskopion ja laittaa sen turvalliseen paikkaan ?

Salausavaimissa liika automatisointi on pahasta, koska tällöin esim. kiintolevyn rikkoutuminen johtaa tilanteeseen, jossa niitä salausavaimia ei löydy enää mistään !

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