Kuinka välttää yksityisen avaimen lataaminen GitHubiin: lähestymistavat salaisuuksien julkistamisen estämiseen

blogi 1NewsDevelopersEnterpriseBlockchain ExplainedTapahtumat ja konferenssitPainaUutiskirjeet

tilaa uutiskirjeemme.

Sähköpostiosoite

Kunnioitamme yksityisyyttäsi

EtusivuBlogiBlockchain Development

Kuinka välttää yksityisen avaimen lataaminen GitHubiin: lähestymistavat salaisuuksien julkistamisen estämiseen

Pidä yksityiset avaimesi ja API-salaisuutesi turvassa älykkäitä sopimuksia kehittäessä – ConsenSys · 7. lokakuuta 2020 Lähetetty 7. lokakuuta 2020

lukittu puinen ovi PPCRJ2J

Kirjoittajat Coogan Brennan ja Thomas Hay

Muutama kerta vuodessa, a tarina tekee kierrosta onneton Ethereum-kehittäjä, joka blockchain-projektia rakentaessaan lähettää vahingossa supersalaisen muistilauseensa, jota käytetään lompakonsa luomiseen, julkiselle GitHub-sivulle. Muutamassa sekunnissa heidän lompakkoonsa on “murtauduttu” ja tyhjennetty sen varat.

Mitään ei kuitenkaan ole todella hakkeroitu: Kauppa, jolla kaikki varat siirretään hakkeri-osoitteeseen, on täysin järkevää. Siksi verkko käsittelee ja hyväksyy sen. Verkolla ei ole väliä kuka allekirjoittaa tapahtuman tai mikä oli heidän aikomuksensa, vain että sen salaus on järkevää. Verkko olettaa, että kuka tahansa, jolla on muistitiedosto tai luodut yksityiset avaimet, on vastaavien tilien varojen laillinen omistaja. 

Se on kylmää mukavuutta henkilölle, joka on menettänyt hallinnan lompakostaan. Välitön reaktio on ajatella, että heidän lompakkoonsa on murtauduttu. Se on ymmärrettävää! Mutta ennen kuin pääset pisteeseen, jossa sinun on mietittävä, onko lompakko vaarantunut, on hyvä tarkistaa, ettet aio paljastaa tahattomasti yksityisiä tietojasi.

Tässä on joitain lopullisia vaiheita, jotta vältetään joutuminen vastaavaan tilanteeseen. (Bonuspisteet: Tässä artikkelissa kuvatut tekniikat ovat erinomainen turvallisuushygienia kaikille projekteille, estoketjuille tai ei!)

Seuraavassa hahmotellaan kaksi tapaa, joilla EI julkaista salaisuuksia (API-avaimet, yksityiset avaimet, siemenlauseet, tietokannan salasanat) GitHub-arkistoon:

Lähestymistapa 1 :.gitignore, a.env-tiedosto ja dotenv (olettaen, että kehitämme Soliditylle yhteisiä malleja ja työnkulkua käyttäen Tryffeli ja MetaMask, vaikka tämä on yleistetty)

Vaihe 1: Lue ohjeet.gitignore. Vakavasti, lue koko dokumentaation sivu.

A.gitignore-tiedoston avulla voit määrittää tiedostoja, joita ei pitäisi seurata. Luot a.gitignore-tiedoston hakemistoon, jossa kehität projektiasi. Tässä tiedostossa määrität tiedostot, joita et halua seurata. Oppaat selittävät sinulle erilaisia ​​tekstimalleja, joita voit käyttää tiedostojen jäljittämiseen (tai seuraamiseen).

Tässä on esimerkki yhdestä:

imageofgitignorefile 1

Riville 20 olemme lisänneet a.env-tiedoston

Vaihe 2: Määritä a.env-tiedosto ympäristömuuttujien tallentamiseksi

Ympäristömuuttujat, alun perin toteutettu versiossa 7 Unix (julkaissut vuonna 1979 Bell Labs, Napsauta tästä saadaksesi kopion käyttöoppaasta) muuttaa tietojenkäsittelyjärjestelmän suorittamaa prosessia. Ympäristömuuttujat on otettu käyttöön kaikissa käyttöjärjestelmissä, joita opiskelijamme käyttävät rakentaakseen dApps Ethereumiin (Unix, Linux, MacOS, Windows). Tällöin salaisuuksiasi käsitellään ympäristömuuttujina ja ne sijoitetaan tiedostoon.env.

Tässä on esimerkki a.env-tiedostosta

exampleofenvfile

Vaihe 3: Lue tuotteen dokumentaatio dotenv. Asenna dotenv.

Dotenv “On nollariippuvuusmoduuli, joka lataa ympäristömuuttujia a.env-tiedostosta process.env-tiedostoon.” (haettu osoitteesta  https://www.npmjs.com/package/dotenv 25. syyskuuta 2020)

nstall dotenv käyttämällä npm asenna dotenv

Vaihe 4: Lisää vaatimus (‘dotenv’). Config () sovelluksen alkuun. Käytä process.env-tiedostoa tässä tiedostossa.

Koodiesimerkki: application.js

// Tämä on application.js Request (‘dotenv’). Config () -sivun yläosa. Tämä on esimerkki prosessista.env myöhemmin tiedostossa var PrivateKey = new Buffer (process.env. ["PRIVATE_KEY"], "Hex")) // Tässä on toinen esimerkki prosessin.env const APIKey = process.env.API_KEY käytöstä; Koodikieli: JavaScript (javascript)

Vaihe 5: Jos haluat nyt julkaista olemassa olevassa GitHub-arkistossa tai siirtyä uuteen GitHub-arkistoon, voit tehdä sen. Salaisuutesi eivät näy olevan osa GitHub-arkistoa.

Video-opas toisesta lähteestä: Daniel Schiffman of Koodaava juna tarjoaa video-opetusohjelman videossaan sääsovelluksen avulla 3.4 API-avainten piilottaminen ympäristömuuttujilla (dotenv) ja koodin työntäminen GitHubiin.

Tekstiopetus toisesta lähteestä: Mason’s Blogissa on opetusohjelma ERC20-tunnuksen käyttöönotto 20 minuutissa. Siinä kuvataan, kuinka a.env-tiedostoa ja dotenv-tiedostoa käytetään älykkään sopimuksen käyttöönotossa tryffeleitä ja Infura.

Lähestymistapa 2: Salattujen salaisuuksien käyttäminen GitHub-toiminnoissa (sopiva niille, jotka tuntevat GitHubin organisaatiotasolla ja joilla on tarvittavat käyttöoikeudet ja GitHub-tili, jotta nämä voidaan toteuttaa käytännössä).

Lähestymistapa 2 käyttää GitHubin erityisesti luomia työkaluja salaisuuksien ratkaisemiseen, joka on välttämätön osa koodin käyttöönottoa, mutta ei sellaista, joka pitäisi paljastaa henkilöille, joilla ei pitäisi olla pääsyä niihin. Tämä lähestymistapa on tärkein organisaatiolle tai henkilölle, joka käyttää GitHubia

Vaihe 1: Lue ohjeet Salatut salaisuudet. Vakavasti, lue dokumentaatio.

Salattujen salaisuuksien avulla voit tallentaa ja käyttää salaisuuksia yhdessä GitHub-arkistossa tai monissa GitHub-arkistoissa. Lue ohjeet näiden käytöstä, koska GitHub selittää erinomaisesti työn käytön Salatut salaisuudet sisällä GitHub-toiminnot

Vaihe 2: Tee mitä dokumentaatiossa käsketään. Se on melko hyvä dokumentaatio. 

Johtopäätös

Tiedät nyt kaksi tapaa estää salaisuuksien julkaiseminen GitHubissa. Onko olemassa muita tapoja tehdä tämä? Varmasti. Tässä on kaksi meille sopivaa menetelmää. Tärkein asia, jonka yritämme välittää, on varmistaa, että ajattelet, missä salaisuutesi voivat näkyä, ja varmistaa, että ryhdyt toimiin itsesi suojaamiseksi. Pysy turvassa siellä.

SecuritySmart ContractsSolidityNewsletterTilaa uutiskirjeemme, jossa on uusimmat Ethereum-uutiset, yritysratkaisut, kehittäjien resurssit ja paljon muuta.Kuinka rakentaa onnistunut blockchain-tuoteWebseminaari

Kuinka rakentaa onnistunut blockchain-tuote

Kuinka perustaa ja suorittaa Ethereum-solmuWebseminaari

Kuinka perustaa ja suorittaa Ethereum-solmu

Kuinka rakentaa oma Ethereum-sovellusliittymäWebseminaari

Kuinka rakentaa oma Ethereum-sovellusliittymä

Kuinka luoda sosiaalinen tunnusWebseminaari

Kuinka luoda sosiaalinen tunnus

Turvatyökalujen käyttäminen älykkäässä sopimusten kehittämisessäWebseminaari

Turvatyökalujen käyttäminen älykkäässä sopimusten kehittämisessä

Digitaalisten varojen ja DeFi: n tulevaisuusWebseminaari

Rahoituksen tulevaisuus: digitaaliset varat ja DeFi

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
map