Gbe lọ si aabo 2FA lori blockchain

Awọn ifiranṣẹ SMS jẹ ọna olokiki julọ ti ijẹrisi ifosiwewe meji (2FA). O ti wa ni lilo nipasẹ awọn bèbe, itanna ati awọn apamọwọ crypto, awọn apoti ifiweranṣẹ ati gbogbo iru awọn iṣẹ; nọmba awọn olumulo ọna ti n sunmọ 100%.

Inu mi binu si oju iṣẹlẹ yii, nitori ọna yii ko lewu. Tunṣe nọmba lati kaadi SIM kan si omiiran bẹrẹ ni ibẹrẹ akoko alagbeka - eyi ni bi nọmba naa ṣe tun pada nigbati kaadi SIM kan ba sọnu. “Awọn alamọja jija owo oni-nọmba” ṣe akiyesi pe aṣayan “tunkọ kaadi SIM” le ṣee lo ni awọn ero arekereke. Lẹhinna, ẹni ti o ṣakoso kaadi SIM le ṣakoso awọn ile-ifowopamọ ori ayelujara ti awọn eniyan miiran, awọn apamọwọ itanna, ati paapaa cryptocurrency. Ati pe o le gba nọmba eniyan miiran nipasẹ fifun oṣiṣẹ tẹlikomita kan, ni lilo ẹtan tabi awọn iwe aṣẹ ayederu.

Gbe lọ si aabo 2FA lori blockchain

Ẹgbẹẹgbẹrun awọn iṣẹlẹ ti ṣiparọ SIM ni a ti ṣe awari, bi a ti pe ero jibiti yii. Iwọn ti ajalu naa daba pe agbaye yoo kọ 2FA silẹ laipẹ nipasẹ SMS. Ṣugbọn eyi ko ṣẹlẹ - ni iwadii wọn sọ pe kii ṣe awọn olumulo ti o yan ọna 2FA, ṣugbọn awọn oniwun iṣẹ.

A daba ni lilo ọna 2FA to ni aabo pẹlu ifijiṣẹ awọn koodu akoko-ọkan nipasẹ blockchain, ati pe a yoo sọ fun ọ bi oniwun iṣẹ ṣe le sopọ.

Iwọn naa lọ sinu awọn miliọnu

Ni ọdun 2019, jegudujera swap SIM pọ si nipasẹ 63% ni ibamu si ọlọpa Ilu Lọndọnu, ati pe “owo apapọ” ti ikọlu jẹ 4,000 GBP. Emi ko rii awọn iṣiro eyikeyi ni Russia, ṣugbọn Mo ro pe wọn buru paapaa.

Yipada SIM ni a lo lati ji Twitter olokiki, Instagram, Facebook, awọn akọọlẹ VK, awọn akọọlẹ banki, ati laipẹ paapaa awọn owo-iworo crypto - Iwe iroyin Times royin gẹgẹ bi Bitcoin otaja Joby Weeks. Awọn iṣẹlẹ ti o ga julọ ti ole cryptocurrency nipa lilo swapping SIM ti n jade ni titẹ lati ọdun 2016; 2019 ri tente oke gidi kan.

Ni Oṣu Karun, Ọfiisi Agbẹjọro AMẸRIKA fun Agbegbe Ila-oorun ti Michigan mu awọn idiyele awọn ọdọ mẹsan laarin awọn ọjọ-ori 19 ati 26: wọn gbagbọ pe wọn jẹ apakan ti ẹgbẹ onijagidijagan ti a pe ni “Agbegbe”. Awọn onijagidijagan ti wa ni agbara pẹlu meje siwopu ku, bi awọn kan abajade ti awọn olosa ji cryptocurrency tọ lori $2,4 million. Ati ni Oṣu Kẹrin, ọmọ ile-iwe California Joel Ortiz gba ọdun mẹwa 10 ninu tubu fun swapping SIM; iṣelọpọ rẹ jẹ $ 7.5 million ni awọn owo-iworo crypto.

Gbe lọ si aabo 2FA lori blockchain
Fọto ti Joel Ortiz ni apejọ atẹjade ile-ẹkọ giga kan. Odun meji nigbamii o yoo wa ni atimọle fun Cyber ​​jegudujera.

Bawo ni SIM siwopu ṣiṣẹ

"Swaping" tumo si paṣipaarọ. Ninu gbogbo iru awọn eto bẹẹ, awọn ọdaràn gba nọmba foonu ti olufaragba naa, nigbagbogbo nipasẹ fifun kaadi SIM kan, ati lo lati tun ọrọ igbaniwọle pada. Paṣipaarọ SIM aṣoju ni ilana yii dabi eyi:

  1. Iṣẹ oye. Awọn ẹlẹtan wa alaye ti ara ẹni ti olufaragba naa: orukọ ati nọmba foonu. Wọn le rii ni awọn orisun ṣiṣi (awọn nẹtiwọọki awujọ, awọn ọrẹ) tabi gba lati ọdọ alabaṣepọ - oṣiṣẹ ti oniṣẹ ẹrọ alagbeka kan.
  2. Ìdènà. Kaadi SIM olufaragba ti wa ni danu; Lati ṣe eyi, kan pe atilẹyin imọ-ẹrọ olupese, pese nọmba naa ki o sọ pe foonu naa ti sọnu.
  3. Yaworan, gbe nọmba lọ si kaadi SIM rẹ. Nigbagbogbo eyi tun ṣee ṣe nipasẹ accomplice ni ile-iṣẹ tẹlifoonu tabi nipasẹ ayederu awọn iwe aṣẹ.

Ni igbesi aye gidi awọn nkan paapaa le siwaju sii. Awọn ikọlu yan olufaragba lẹhinna tọpinpin ipo foonu naa lojoojumọ - ibeere kan lati gba alaye ti awọn alabapin ti yipada si awọn idiyele lilọ kiri 1-2 senti. Ni kete ti eni to ni kaadi SIM ti lọ si ilu okeere, wọn dunadura pẹlu oluṣakoso ni ile itaja ibaraẹnisọrọ lati fun kaadi SIM titun kan. O jẹ nipa $ 50 (Mo ti rii alaye - ni awọn orilẹ-ede oriṣiriṣi ati pẹlu awọn oniṣẹ oriṣiriṣi lati $ 20 si $ 100), ati ninu ọran ti o buru julọ yoo yọ oluṣakoso kuro - ko si ojuse fun eyi.

Bayi gbogbo SMS yoo gba nipasẹ awọn ikọlu, ati oniwun foonu kii yoo ni anfani lati ṣe ohunkohun nipa rẹ - o wa ni okeere. Ati lẹhinna awọn onijagidijagan ni iraye si gbogbo awọn akọọlẹ olufaragba ati yi awọn ọrọ igbaniwọle pada ti o ba fẹ.

Awọn aye ti ipadabọ ohun-ini ji

Awọn ile-ifowopamọ nigbakan gba awọn olufaragba ni agbedemeji ati yọkuro awọn gbigbe lati awọn akọọlẹ wọn. Nitorinaa, o ṣee ṣe lati da owo fiat pada paapaa ti a ko ba rii ọdaràn naa. Ṣugbọn pẹlu awọn apamọwọ cryptocurrency ohun gbogbo jẹ idiju diẹ sii - ati tekinikali, ati ni isofin. Titi di isisiyi, kii ṣe paṣipaarọ kan / apamọwọ kan ti san ẹsan fun awọn olufaragba ti swapping.

Ti awọn olufaragba ba fẹ lati daabobo owo wọn ni ile-ẹjọ, wọn jẹbi oniṣẹ ẹrọ: o ṣẹda awọn ipo fun jija owo lati akọọlẹ naa. Ohun ti mo ṣe gan-an niyẹn Michael Turpin, ti o padanu $224 milionu nitori swapping O ti wa ni ẹjọ ile-iṣẹ ibaraẹnisọrọ AT&T.

Gbe lọ si aabo 2FA lori blockchain

Titi di isisiyi, ko si ipinlẹ kan ti o ni awọn ero ṣiṣe lati daabobo awọn oniwun cryptocurrency ni ofin. Ko ṣee ṣe lati rii daju olu-ori rẹ tabi gba isanpada fun pipadanu rẹ. Nitorinaa, idilọwọ ikọlu swap jẹ rọrun ju ṣiṣe pẹlu awọn abajade rẹ. Ọna ti o han julọ julọ ni lati lo “ifokansi keji” igbẹkẹle diẹ sii fun 2FA.

SIM siwopu kii ṣe iṣoro nikan pẹlu 2FA nipasẹ SMS

Awọn koodu ìmúdájú ninu SMS tun jẹ ailewu lati oju-ọna imọ-ẹrọ. Awọn ifiranṣẹ le ni idilọwọ nitori awọn ailagbara ti a ko parẹ ninu Eto Ifiranṣẹ 7 (SS7). 2FA lori SMS jẹ ifọwọsi ni ifowosi bi ailewu (Ile-iṣẹ AMẸRIKA ti Awọn ajohunše ati Imọ-ẹrọ sọ eyi ninu rẹ Digital Ijeri Itọsọna).

Ni akoko kanna, wiwa 2FA nigbagbogbo fun olumulo ni oye ti aabo eke, ati pe o yan ọrọ igbaniwọle ti o rọrun. Nitorinaa, iru ijẹrisi bẹ ko jẹ ki o nira, ṣugbọn o jẹ ki o rọrun fun ikọlu kan lati ni iraye si akọọlẹ naa.

Ati nigbagbogbo SMS de pẹlu idaduro pipẹ tabi ko de rara.

Awọn ọna 2FA miiran

Nitoribẹẹ, ina ko ṣajọpọ lori awọn fonutologbolori ati SMS. Awọn ọna miiran wa ti 2FA. Fun apẹẹrẹ, awọn koodu TAN ọkan-akoko: ọna alakoko, ṣugbọn o ṣiṣẹ - o tun lo ni diẹ ninu awọn bèbe. Awọn ọna ṣiṣe wa ti nlo data biometric: awọn ika ọwọ, awọn ọlọjẹ retinal. Aṣayan miiran ti o dabi ẹnipe adehun ti o tọ ni awọn ofin ti irọrun, igbẹkẹle ati idiyele jẹ awọn ohun elo pataki fun 2FA: RSA Token, Google Authenticator. Awọn bọtini ti ara ati awọn ọna miiran tun wa.

Ni imọran, ohun gbogbo dabi ọgbọn ati igbẹkẹle. Ṣugbọn ni iṣe, awọn solusan 2FA ode oni ni awọn iṣoro, ati nitori wọn, otitọ yatọ si awọn ireti.

Gegebi iwadii, lilo 2FA jẹ airọrun ni ipilẹ, ati olokiki ti 2FA nipasẹ SMS jẹ alaye nipasẹ “aibalẹ ti ko ni afiwe si awọn ọna miiran” - gbigba awọn koodu akoko kan jẹ oye fun olumulo.

Awọn olumulo ṣepọ ọpọlọpọ awọn ọna 2FA pẹlu iberu pe wiwọle yoo sọnu. Bọtini ti ara tabi atokọ ti awọn ọrọ igbaniwọle TAN le sọnu tabi ji. Emi tikalararẹ ti ni awọn iriri buburu pẹlu Google Authenticator. Foonuiyara mi akọkọ pẹlu ohun elo yii ṣubu - riri awọn akitiyan mi ni mimu-pada sipo iraye si awọn akọọlẹ mi. Iṣoro miiran ni iyipada si ẹrọ tuntun kan. Google Authenticator ko ni aṣayan okeere nitori awọn idi aabo (ti awọn bọtini ba le ṣe okeere, aabo wo wa nibẹ?). Ni kete ti Mo gbe awọn bọtini pẹlu ọwọ, ati lẹhinna Mo pinnu pe o rọrun lati lọ kuro ni foonuiyara atijọ ninu apoti kan lori selifu kan.

Ọna 2FA yẹ ki o jẹ:

  • Ni aabo - iwọ nikan kii ṣe awọn ikọlu yẹ ki o ni iraye si akọọlẹ rẹ
  • Gbẹkẹle - o ni iraye si akọọlẹ rẹ nigbakugba ti o nilo rẹ
  • Rọrun ati iraye si - lilo 2FA jẹ kedere ati gba akoko to kere julọ
  • Olowo poku

A gbagbọ pe blockchain jẹ ojutu ti o tọ.

Lo 2FA lori blockchain

Fún olùlò, 2FA lórí blockchain náà jẹ́ bákan náà pẹ̀lú gbígba àwọn kódù ìgbà kan nípasẹ̀ SMS. Ìyàtọ̀ kan ṣoṣo ni ọ̀nà ìfijiṣẹ́. Ọ̀nà gbígba kódù 2FA sinmi lórí ìfilọ́lẹ̀ blockchain. Nínú iṣẹ́ wa (ìwífún wà nínú profaili mi), èyí ní àpù wẹ́ẹ̀bù, Tor, àti iOS nínú. Android, Linux, Windows, MacOS.

Iṣẹ naa ṣe agbejade koodu akoko kan ati firanṣẹ si ojiṣẹ lori blockchain. Lẹhinna tẹle awọn kilasika: olumulo tẹ koodu ti o gba wọle ni wiwo iṣẹ ati wọle.

Gbe lọ si aabo 2FA lori blockchain

Nkan na Bawo ni ojiṣẹ ti a ti sọ di mimọ ṣiṣẹ lori blockchain? Mo kowe pe blockchain ṣe idaniloju aabo ati aṣiri ti gbigbe ifiranṣẹ. Lori ọran ti fifiranṣẹ awọn koodu 2FA, Emi yoo saami:

  • Ọkan tẹ lati ṣẹda iroyin - ko si awọn foonu tabi apamọ.
  • Gbogbo awọn ifiranšẹ pẹlu awọn koodu 2FA jẹ ti paroko Ipari-si-opin curve25519xsalsa20poly1305.
  • Kolu MITM ko kuro - gbogbo ifiranṣẹ pẹlu koodu 2FA jẹ idunadura lori blockchain ati pe Ed25519 EdDSA fowo si.
  • Ifiranṣẹ pẹlu koodu 2FA pari ni bulọọki tirẹ. Awọn ọna ati timestamp ti awọn bulọọki ko le ṣe atunṣe, ati nitori naa aṣẹ awọn ifiranṣẹ.
  • Ko si eto aarin ti o ṣe awọn sọwedowo lori “otitọ” ti ifiranṣẹ kan. Eyi ni a ṣe nipasẹ eto pinpin ti awọn apa ti o da lori ipohunpo, ati pe o jẹ ohun ini nipasẹ awọn olumulo.
  • Ko le ṣe alaabo - awọn akọọlẹ ko le dina ati awọn ifiranṣẹ ko le paarẹ.
  • Wọle si awọn koodu 2FA lati ẹrọ eyikeyi nigbakugba.
  • Ìmúdájú ti ifijiṣẹ ifiranṣẹ pẹlu 2FA koodu. Iṣẹ ti o firanṣẹ ọrọ igbaniwọle akoko kan mọ daju pe o ti jiṣẹ. Ko si awọn bọtini “Firanṣẹ lẹẹkansi”.

Lati ṣe afiwe pẹlu awọn ọna 2FA miiran, Mo ṣe tabili kan:

Gbe lọ si aabo 2FA lori blockchain

Olumulo gba akọọlẹ kan ninu ojiṣẹ blockchain lati gba awọn koodu ni iṣẹju-aaya - gbolohun ọrọ igbaniwọle nikan ni a lo lati wọle. Nitorinaa, awọn ọna ohun elo le yatọ: o le lo akọọlẹ kan lati gba awọn koodu fun gbogbo awọn iṣẹ, tabi o le ṣẹda akọọlẹ lọtọ fun iṣẹ kọọkan.

Irọrun tun wa - akọọlẹ naa gbọdọ ni o kere ju idunadura kan. Ni ibere fun olumulo lati gba ifiranṣẹ ti paroko pẹlu koodu kan, o nilo lati mọ bọtini gbogbogbo rẹ, ati pe o han ni blockchain nikan pẹlu iṣowo akọkọ. Eyi ni bii a ṣe ṣakoso lati jade ninu rẹ: a fun wọn ni aye lati gba awọn ami-ami ọfẹ ninu apamọwọ wọn. Sibẹsibẹ, ojutu ti o dara julọ ni lati lorukọ akọọlẹ naa ni bọtini gbogbogbo. (Fun lafiwe, a ni nọmba akọọlẹ naa U1467838112172792705 jẹ itọsẹ ti bọtini gbangba cc1ca549413b942029c4742a6e6ed69767c325f8d989f7e4b71ad82a164c2ada. Fun ojiṣẹ eyi jẹ irọrun diẹ sii ati kika, ṣugbọn fun eto fun fifiranṣẹ awọn koodu 2FA o jẹ aropin). Mo ro pe ni ojo iwaju ẹnikan yoo ṣe iru ipinnu kan ati ki o gbe "Irọrun ati Wiwọle" si agbegbe alawọ ewe.

Iye owo fifiranṣẹ koodu 2FA jẹ kekere gaan - 0.001 ADM, ni bayi o jẹ 0.00001 USD. Lẹẹkansi, o le gbe blockchain rẹ soke ki o jẹ ki idiyele naa jẹ odo.

Bii o ṣe le sopọ 2FA lori blockchain si iṣẹ rẹ

Mo nireti pe MO ni anfani lati nifẹ awọn oluka diẹ lati ṣafikun aṣẹ blockchain si awọn iṣẹ wọn.

Emi yoo sọ fun ọ bi o ṣe le ṣe eyi nipa lilo ojiṣẹ wa bi apẹẹrẹ, ati nipasẹ afiwe o le lo blockchain miiran. Ninu ohun elo demo 2FA a lo postgresql10 lati tọju alaye akọọlẹ.

Awọn igbesẹ asopọ:

  1. Ṣẹda akọọlẹ kan lori blockchain eyiti iwọ yoo fi awọn koodu 2FA ranṣẹ. Iwọ yoo gba gbolohun ọrọ igbaniwọle kan, eyiti o lo bi bọtini ikọkọ lati fi awọn ifiranṣẹ pamọ pẹlu awọn koodu ati lati fowo si awọn iṣowo.
  2. Ṣafikun iwe afọwọkọ kan si olupin rẹ lati ṣe awọn koodu 2FA. Ti o ba ti nlo eyikeyi ọna 2FA miiran pẹlu ifijiṣẹ igbaniwọle igba-ọkan, o ti pari igbesẹ yii tẹlẹ.
  3. Ṣafikun iwe afọwọkọ kan si olupin rẹ lati fi awọn koodu ranṣẹ si olumulo ninu ojiṣẹ blockchain.
  4. Ṣẹda wiwo olumulo fun fifiranṣẹ ati titẹ koodu 2FA kan. Ti o ba ti nlo eyikeyi ọna 2FA miiran pẹlu ifijiṣẹ igbaniwọle igba-ọkan, o ti pari igbesẹ yii tẹlẹ.

1 Ṣẹda iroyin

Ṣiṣẹda akọọlẹ kan ninu blockchain tumọ si ṣiṣẹda bọtini ikọkọ, bọtini ti gbogbo eniyan, ati adirẹsi akọọlẹ ti ari.

Gbe lọ si aabo 2FA lori blockchain

Ni akọkọ, ọrọ igbaniwọle BIP39 ti wa ni ipilẹṣẹ, ati pe SHA-256 hash jẹ iṣiro lati ọdọ rẹ. A lo hash lati ṣe ina awọn bọtini ikọkọ ks ati bọtini ilu kp. Lati bọtini gbangba, lilo SHA-256 kanna pẹlu iyipada, a gba adirẹsi ni blockchain.

Ti o ba fẹ firanṣẹ awọn koodu 2FA ni igba kọọkan lati akọọlẹ tuntun kan, koodu ẹda akọọlẹ yoo nilo lati ṣafikun si olupin naa:

import Mnemonic from 'bitcore-mnemonic'
this.passphrase = new Mnemonic(Mnemonic.Words.ENGLISH).toString()

…

import * as bip39 from 'bip39'
import crypto from 'crypto'

adamant.createPassphraseHash = function (passphrase) {
  const seedHex = bip39.mnemonicToSeedSync(passphrase).toString('hex')
  return crypto.createHash('sha256').update(seedHex, 'hex').digest()
}

…

import sodium from 'sodium-browserify-tweetnacl'

adamant.makeKeypair = function (hash) {
  var keypair = sodium.crypto_sign_seed_keypair(hash)
  return {
    publicKey: keypair.publicKey,
    privateKey: keypair.secretKey
  }
}

…

import crypto from 'crypto'

adamant.getAddressFromPublicKey = function (publicKey) {
  const publicKeyHash = crypto.createHash('sha256').update(publicKey, 'hex').digest()
  const temp = Buffer.alloc(8)
  for (var i = 0; i < 8; i++) {
    temp[i] = publicKeyHash[7 - i]
  }
  return 'U' + bignum.fromBuffer(temp).toString()
}

Ninu ohun elo demo, a jẹ ki o rọrun - a ṣẹda akọọlẹ kan ninu ohun elo wẹẹbu, ati firanṣẹ awọn koodu lati ọdọ rẹ. Ni ọpọlọpọ igba, eyi tun rọrun diẹ sii fun olumulo: o mọ pe iṣẹ naa firanṣẹ awọn koodu 2FA lati akọọlẹ kan pato ati pe o le lorukọ rẹ.

Gbe lọ si aabo 2FA lori blockchain

2 Ti o npese 2FA koodu

Koodu 2FA gbọdọ wa ni ipilẹṣẹ fun iwọle olumulo kọọkan. A lo ile-ikawe soro, ṣugbọn o le yan eyikeyi miiran.

const hotp = speakeasy.hotp({
  counter,
  secret: account.seSecretAscii,
});

Ṣiṣayẹwo iwulo koodu 2FA ti olumulo ti tẹ sii:

se2faVerified = speakeasy.hotp.verify({
  counter: this.seCounter,
  secret: this.seSecretAscii,
  token: hotp,
});

3 Fifiranṣẹ koodu 2FA

Lati fi koodu 2FA kan silẹ, o le lo API node blockchain, ile-ikawe JS API, tabi console. Ni apẹẹrẹ yii, a lo console - eyi ni wiwo Laini Laini aṣẹ, ohun elo ti o rọrun ibaraenisepo pẹlu blockchain. Lati fi ifiranṣẹ ranṣẹ pẹlu koodu 2FA, o nilo lati lo aṣẹ naa send message awọn afaworanhan.

const util = require('util');
const exec = util.promisify(require('child_process').exec);

…

const command = `adm send message ${adamantAddress} "2FA code: ${hotp}"`;
let { error, stdout, stderr } = await exec(command);

Ọna miiran lati firanṣẹ awọn ifiranṣẹ ni lati lo ọna naa send ni JS API ìkàwé.

4 Ni wiwo olumulo

Olumulo nilo lati fun ni aṣayan lati tẹ koodu 2FA sii, eyi le ṣee ṣe ni awọn ọna oriṣiriṣi ti o da lori pẹpẹ ohun elo rẹ. Ninu apẹẹrẹ wa eyi ni Vue.

Gbe lọ si aabo 2FA lori blockchain

Awọn koodu orisun fun blockchain meji-ifosiwewe ìfàṣẹsí demo ohun elo le wa ni bojuwo ni GitHub. Ọna asopọ kan wa ninu Readme si demo Live kan lati gbiyanju rẹ.

orisun: www.habr.com

Ra alejo gbigba igbẹkẹle fun awọn aaye pẹlu aabo DDoS, awọn olupin VPS VDS 🔥 Ra gbigbalejo oju opo wẹẹbu ti o gbẹkẹle pẹlu aabo DDoS, awọn olupin VPS VDS | ProHoster