arrow_backYn ôl i'r nodiadau maes
CRYPTOGRAPHY Cyhoeddwyd 9 Aug 2026

Sut y mae Cryptograffeg Allwedd Gyhoeddus yn Gweithio Mewn Gwirionedd

Taith ymarferol trwy amgryptiad anghymesur, parau allweddi, ac llofnodion digidol, heb y cymhariaeth mathemategol ddwylo'n yr awyr.

Bob tro rydych chi'n SSH i mewn i weinydd neu'n llwytho safle HTTPS, mae dwy allwedd sy'n gysylltiedig yn fathemategol yn gwneud y gwaith trwm. Mae un yn gyhoeddus, mae un yn breifat, ac mae'r berthynas rhyngddynt yn yr hyn sy'n gwneud cyfathrebu diogel dros rwydwaith anmdiried yn bosibl yn y lle cyntaf.

Yr syniad sylfaenol

Gydag amgryptiad cymesur, mae un allwedd yn cloi ac yn agor y data. Mae hynny'n gweithio'n iawn os oes gan y ddwy barti eisoes gyfrinach a rennir, ond dosbarthu'r gyfrinach honno'n ddiogel yw'r rhan anodd. Mae cryptograffeg allwedd-gyhoeddus (anghymesur) yn datrys hyn trwy gynhyrchu par sy'n gysylltiedig yn fathemategol: allwedd gyhoeddus rydych chi'n ei hestyn i unrhyw un, ac allwedd breifat na fyddwch chi byth yn ei rhannu.

Nid oes modd dadgryptio data sy'n cael ei amgryptio gyda'r allwedd gyhoeddus ond gyda'r allwedd breifat sy'n cyfateb. Gellir gwirio data sy'n cael ei lofnodi gyda'r allwedd breifat gan unrhyw un sy'n dal yr allwedd gyhoeddus. Mae'r ddwy eiddo hynny'n gorchudio bron popeth rydym ni'n ei ddefnyddio hon ar gyfer: cyfrinachedd ac ymwiriad.

RSA, yr enghraifft glasurol

Mae RSA yn dibynnu ar y ffaith bod lluosi dwy gyseinrif fawr yn gyflym, ond mae ffactorio'r cynnyrch yn ôl i'r cyseinrifau hynny yn aruthrol o gostus yn gyfrifiadol ar raddfa. Mae allwedd RSA 2048-did wedi'i hadeiladu o ddwy gyseinrif tua 1024 did yr un. Mae'r allwedd gyhoeddus yn (n, e) — n yw cynnyrch y cyseinrifau, e yn esbonydd sefydlog fel 65537. Mae'r allwedd breifat yn cael ei deillio gan ddefnyddio totient n ac yn cymryd yn ôl gwybodaeth am y cyseinrifau gwreiddiol.

Amgryptiad yw exponentiation modwlar: c = m^e mod n. Mae dadgryptiad yn ei wrthdroi gyda'r esbonydd breifat d: m = c^d mod n. Nid yw neb mewn gwirionedd yn amgryptio llwythi mawr yn uniongyrchol gyda RSA mewn ymarfer, fodd bynnag — mae'n araf ac mae ganddo gyfyngiadau maint wedi'u rhwymo i hyd yr allwedd. Yn lle hynny, mae RSA yn nodweddiadol yn lapio allwedd sesiwn cymesur (AES-256, er enghraifft), ac mae'r siffer cymesur yn trin y data mwyaf. Dyna'r dull hybrid a ddefnyddir gan TLS.

Cryptograffeg cromlin eliptig ac pam ei bod yn cymryd yr awenau

Mae ECC yn rhoi diogelwch cyfwerth i RSA gydag allweddi llawer llai. Mae allwedd ECC 256-did (fel secp256r1 cromlin neu Curve25519) tua cydweddu mewn nerth i allwedd RSA 3072-did. Mae allweddi llai yn golygu trafodiad cyflymach a llai o led-dwyrain, sy'n pam y mae ffurfweddiadau TLS modern, gweithreddiadau SSH, a phrotoctl Signal i gyd yn dibynnu ar ECC.

Mae'r mathemateg yn wahanol — mae'n seiliedig ar y broblem logarithm arwahanol dros bwyntiau ar gromlin eliptig yn hytrach na ffactorio cyfanrif — ond mae'r berthynas allwedd gyhoeddus/breifat a'r gwarantïau yn gysyniadol yr un peth.

Llofnodion digidol: hanner arall yr hafaliad

Mae amgryptiad yn cadw data yn gyfrinachol. Mae llofnodion yn profi dilysrwydd ac integriti. I lofnodi neges, rydych chi'n ei hash (SHA-256, fel arfer) ac yn amgryptio'r hash hwnnw gyda'ch allwedd breifat. Gall unrhyw un sy'n dal eich allwedd gyhoeddus hash y neges eu hunain, dadgryptio'ch llofnod, a gwirio bod y ddau hash yn cyfateb.

Dyma yn union yr hyn sy'n digwydd pan rydych chi'n rhedeg git commit -S gydag allwedd GPG, neu pan fydd Awdurdod Tystysgrif yn llofnodi tystysgrif TLS. Mae allwedd breifat y CA yn llofnodi eich tystysgrif; ni fydd porwyr yn dod gyda'r allwedd gyhoeddus CA cyn-ymddiried, felly gallant wirio dilysrwydd eich tystysgrif heb siarad â'r CA yn uniongyrchol byth.

Lle y mae hyn yn ymddangos bob dydd

Mae ymwiriad allwedd SSH yn gymhwysiad uniongyrchol: ssh-keygen -t ed25519 yn cynhyrchu par allweddi, rydych chi'n taflu'r hanner cyhoeddus i ~/.ssh/authorized_keys ar y gweinydd, ac mae'r ymwiriad yn digwydd trwy her-ymateb gan ddefnyddio'r allwedd breifat, dim cyfrinair byth wedi'i drosglwyddo.

Mae rhanddrafftio TLS yn defnyddio cryptograffeg anghymesur yn fyr, dim ond i sefydlu allwedd cymesur a rennir (trwy gyfnewid allwedd ECDHE mewn trefniadau modern), yna'n disgyn i amgryptiad cymesur cyflym ar gyfer y sesiwn wirioneddol. Mae amgryptiad e-bost PGP/GPG yn dilyn y patrwm hybrid hefyd — amgryptio'r neges gyda hap allwedd AES, yna amgryptio'r allwedd AES honno gyda'ch allwedd gyhoeddus RSA neu ECC derbynydd.

Beth sy'n torri mewn gwirionedd mewn ymarfer

Nid yw'r mathemateg tu ôl RSA a ECC wedi'i thorri trwy gyfrifiadur glasurol. Yr hyn sy'n mynd o'i le bron bob amser yw gweithrediad: cynhyrchu rhif digwyddiad gwan wrth greu allweddi (yw'r byg OpenSSL Debian o 2008 yn achos testun), nonce a ailddodefwyd mewn llofnodion ECDSA sy'n gollwng allweddi breifat, neu ataliwch darogan claddio yn erbyn RSA gwael ei weithredu (ymosodiad Bleichenbacher yn erbyn claddio PKCS#1 v1.5). Cyfrifiadura cwantwm yw'r bygwth damcaniaethol hirdymor — byddai algorithm Shor yn torri RSA a ECC pe byddai cyfrifiadur cwantwm digon mawr yn bodoli — sy'n pam y mae NIST eisoes wedi safoni algorithmau ôl-cwantwm fel ML-KEM (Kyber gynt) ar gyfer mudfudiad yn y dyfodol.

Os ydych chi eisiau mynd ymhellach gyda hyn, mae trac cryptograffeg Korra Studio yn gorchudio protocolau gyfnewid allweddi a mewnfoddion swyddfa stwnsh mewn mwy o ddyfnder, ac mae'r segmentau rhwydweithio yn cerdded trwy sut y mae holl hyn yn ffitio i randdrafftio TLS gwirioneddol fesul beit.

Ysgrifennwyd yr erthygl hon gyda chymorth AI, a'i hadolygu a'i chyhoeddi gan Michal Pilch (CISSP), Korra Studio.

Yn barod i fynd ymhellach?

Dyma un nodyn o'r gronfa wybodaeth Korra Studio — mae'r platfform yn paru pob pwnc ag 1-i-1 mentora.

Dechrau am ddimarrow_forward