Thursday, August 13, 2015

Биткойныг хадгалах ямар сонголтууд байна?

Биткойн түрийвч нь биет биш үсэг тооноос бүрдсэн хувийн нууц түлхүүр бөгөөд үүнийгээ ашиглан хаяг руугаа орж өөртөө буй биткойнуудыг ашиглана. Биткойны түрийвч маш олон сонголттой бөгөөд янз бүрийн хэлбэрээр сонголт байна. Тэр ч атугай түрийвчээ компьютерт хадгалалгүйгээр цаасан дээр хэвлэн авах ч боломж бий. Аль ч тохиолдолд та өөрийнхөө түрийвчийг сайн чандлан хадгалж, мөн backup хийх нь маш чухал юм. 
Биткойн нь орчин үеийн цаасан мөнгийг орлуулж болох төлбөрийн хэрэгсэл бөгөөд өдрөөс өдөрт бизнесүүд энэхүү төлбөрийн хэрэгслийг хүлээн авдаг болж байна. Бусад нийтлэлээс та биткойн хэрхэн үүсгэдэг болон гүйлгээ хийгддэгийг харсан байх, харин биткойныг яаж хадгалах вэ? Бид цаасан мөнгөө биет түрийвчэд хийж хадгалдаг харин биткойн нь төстэй ч дижиталаар хадгалагдана.
Яг үнэндээ бол биткойныг хаана ч хадгална гэсэн ойлголт байхгүй. Түүний оронд түрийвч нь нууц хувийн түлхүүр (secure digital key/private key) бөгөөд түүнийгээ ашиглан та нийтийн хаяг (public key) руу ороод гүйлгээг шифрлэлт хийнэ. Зөвхөн эдгээр мэдээлэл л биткойны түрийвчэнд оршино. 
Биткойны түрийвч нь ширээний компьютер, мобайль гар утас, хэвлэсэн цаасан дээр эсвэл компьютерийн биет төхөөрөмжүүд дээр байж болно. 
Ширээний компьютер буюу PC
Хэрэв та анх гарч ирсэн биткойны client болох Bitcoin Core software-ийг ашиглаж буй бол, та аль хэдийн түрийвч ашиглаж байна гэсэн үг. Энэ программаар гүйлгээг биткойны сүлжээ рүү дамжуулж, мөн өөртөө хаяг үүсгэн, нууц түлхүүрээ хадгалах боломжтой. 
Бусад desktop client-үүд гэвэл: MultiBit, Hive, Armory гэх мэт байна. Мөн darkwallet нь жижиг хэмжээний browser plugin ашиглаад coin mix үйлчилгээг ашигласнаар өөрийн гүйлгээгээр таныг олж авахгүй болгох нууцлалт хийх боломжтой. 
Мобайль түрийвч
Desktop PC-д зориулсан түрийвчүүд сайн хийгдсэн ч, та гадаа гудманд бараа худалдан авах зэрэгт бол мэдээж тохиромжгүй бөгөөд энэ тохиолдолд mobile утсан дээрээ суурилуулаад ашиглаж болох апп түрийвчүүдийг хэрэглээрэй. Ингэснээр гар утасаараа төлбөрөө хийх боломжтой болно. 
Зарим тохиолдолд NFC технологийг ашиглаад утсаа шүргүүлээд бие биендээ биткойноо дамжуулж болно. 
Харин биткойн апп-уудын нэг онцлог нь тэдгээр нь desktop PC дээрхи шиг бүрэн хэмжээний client биш байдаг. Desktop PC дээрхи бүрэн хэмжээний client нь хэдэн GB хэмжээтэй цаашид хэмжээ нь өсөж байдаг гинжэн блок(blockchain)-ийг бүхэлд нь сүлжээнээс татан авч диск дээр байрлуулна. Тийм учир үүнийг гар утсан дээр байрлуулах ихэнхдээ боломжгүй эсвэл тохиромжгүй байна. 
Харин түүний оронд гар утсан дээрхи client-үүд нь амарчилсан төлбөрийн баталгаажуулалт ашиглана. (simplified payment verification - SPV). Энэ нь гинжэн блок-ийн жижиг хэсгийг татан авснаар бусад мэдээллээ биткойн сүлжээн дээрхи өөр client-үүдэд найдана. 
Mobile түрийвчүүдээс: Bitcoin wallet, Mycelium, Xapo ба Blockchain гэх мэт байна. 
Эдгээрээс blockchain нь таны биткойны нууц түлхүүрэнд дахин шифрлэлт хийж, web server дээр байршуулна. 

Online түрийвчүүд
Вэб дээр тулгуурласан түрийвчүүд нь таны нууц түлхүүрийг онлайнаар хадгална. Тиймд интернэтэд холбогдсон хэн нэгэн этгээд таны түлхүүрийг хариуцна гэсэн үг. Энэний нэг тал нь та интернэтэд холбогдсон л бол түрийвчээ хаанаас ч ашиглаж болно гэсэн үг. Харин үүний маш том сөрөг давуу тал нь тухайн этгээд таны хариуцаж байсан түлхүүрийг ямар нэгэн шалтгаанаар алдсан, шамшигдуулсан тохиолдолд та биткойнуудаа алдан аюултай. 
Онлайн үйлчилгээ явуулдаг компаниуд гэвэл Coinbase, circle хүмүүс үйлчилгээнүүд байна.  

Hardware буюу биет төхөөрөмж дээр суурилсан түрийвчүүд
Эдгээр төхөөрөмжүүд нь түрийвчний нууц үгийг хадгалах бөгөөд одоохондоо ашиглалт хязгаарлагдмал байна. Эдгээрээс trezor төхөөрөмж хамгийн их ашиглагдаж байна. Энэхүү төхөөрөмжийг ашигласнаар та 3 дахь этгээдэд өөрийн нууцлалаа хадгалуулах зэрэг риск байхгүй болж зөвхөн өөрөө хариуцах боломжтой болно. 

Цаасан түрийвч
Хамгийн хямд болон тархсан сонголт бол та биткойны түрийвчийнхээ мэдээллийг цаасан дээр буулган авч онлайн орчноос тусдаа байлгах юм. Цаасан түрийвчний үйлчилгээ үзүүлдэг хэд хэдэн газрууд байна. Эдгээрийг ашиглаад та цаасан 2 янзын QR код хэвлүүлж болно: нэг нь таны хаяг буюу нийтийн түлхүүр, нөгөө нь таны түрийвчний нууцлал буюу хувийн нууц түлхүүр. Эдгээрийг QR код scanner ашиглаад биткойноо ашиглаж болно. Цаасан түрийвчний хамгийн давуу тал нь онлайн орчноос салгагдсан тул хакеруудын халдлагад өртөх, төхөөрөмжийг алдах зэрэг сөрөг үр дагаваруудаас чөлөөлөгдөнө гэсэн үг. 

Түрийвчээ хэрхэн хамгаалах вэ?
Түрийвчээ хамгаалж, аюулгүй байдлыг нь хангах дараах хэд хэдэн арга зам байна:

  • Шифрлэлт хийх

Түрийвчээ хамгаалах хамгийн тархсан арга нь шифрлэлт хийж түүнийгээ сайн password-оор давхар баталгаажуулах хэрэгтэй. Энэ нь таны түрийвч рүү халдах оролдлогыг хэцүү болгоно гэхдээ ямар ч боломжгүй болгоно гэсэн үг биш. Хэрэв таны компьютер вирустсан бол таныг password-ыг оруулах явцад хуулж аваад password-ыг мэдэж авах боломжтой. 


  • Backup (Нэмэлт хувилбар) хийх

Хэрэв эзэмшилд буй түрийвч нэгхэн хувь байгаад түүнийгээ алдсан тохиолдолд дотор нь буй биткойноо алдах болно. Үүнээс сэргийлж түрийвчний хувийн нууц түлхүүрээ хувилж (backup) авснаар энэ асуудлыг шийдэж болно. 


  • Нэгээс илүү гарын үсэг/баталгаажуулалт - Multi-signature transaction
Multi-signature transaction нь хэд хэдэн хүний гарын үсэг буюу шифрлэлт хийснээр л гүйлгээг хийх боломжтой. Оролцогч этгээдүүд анх хаяг үүсгэхдээ энийгээ тохиролцоно. Энэ нөхцлөөр бизнесийн түншүүд, гэр бүлийн хүмүүс хоорондоо тохиролцож хамтдаа биткойныг эзэмшиж болно. Тэр ч атугай та 2 өөр гар утсан дээрхи гарын үсэгүүдээс бүрдсэн хаяг ашиглах ч боломжтой.


  • Онлайнаас орчноос салангид хадгалах

Онлайнаас орчноос тусад нь хадгалахыг cold storage буюу үгчлэн орчуулвал "хүйтэн хадгалалт" гэж орчуулж болно. Ингэснээр онлайн хакеруудаас нууцлалаа хадгалах боломжтой гэж үздэг. Хэрэв та их хэмжээний биткойныг хадгалах хэрэг гарвал дийлэнхийг нь энэ маягаар хадгалаад цөөн хэсгийг гүйлгээ хийх зорилгоор онлайн байлгаж болох юм. Ингэснээр таны капиталын цөөн хэсэг нь л рисктэй орчинд хадгалагдана.


Tuesday, August 11, 2015

Орчуулга


  • bitcoin - биткойн (үгчилж орчуурвал битзоос гэж болно)
  • blockchain / general ledger - гинжэн блок / үндсэн тэмдэглэгээ
  • block - блок
  • miner(s) - уурхайчин(д),
  • hash - хаш
    (дурын мэдээлэл, дата-г алгоритмын тусламжтай нэг урттай утгаар илэрхийлэх, мөн fingerprint, message digest, cryptographic checksum, message integrity check, manipulation detection code(MAC) гэж янз янзаар нэрлэгдэнэ)
  • nonce - nonce
    (олон удаа үүсгэх зорилгоор хэрэглэх дурын тоо, дахин үүсгэх болгонд өөр өөр бөгөөд ямар утга үүсэхийг урьдчилан таах боломжгүй (random) байна)
  • encryption, sign - шифрлэлт
  • ciphertext - шифрлэгдсэн мэдээлэл
  • plaintext - тайлагдсан (шифрлэгдээгүй) мэдээлэл
  • private key -хувийн нууц түлхүүр - биткойн түрийвч 
  • public key - нийтийн түлхүүр - биткойн хаяг
  • node - зангилаа - сүлжээнд уурхай хийх, гүйлгээний баталгаа хийж сүлжээнд хамрагдсан компьютерийн систем, энэ нь ширээний компьютер-аас авхуулаад тусгайлан бэлтгэсэн ASIC (Application Specific Integrated Circuit) байж болно. 
  • target threshold - тоот хязгаар - хаш хийхэд хэр хүнд байхыг тодорхойлох тохируулах зориулалттай тоон утга.
  • consensus rule - зөвшилцөөний дүрэм - хашийг хэр хүчин чармайлтаар гаргах дүрэмийг заасан зөвшилцлийн болон бусад дүрэм.

  • transaction input/output - гүйлгээний оролт/гаралт
  • proof of work - гүйцэтгэлийн баталгаажуулалт
  • coinbase transaction - үндсэн гүйлгээ, үндсэн зоос гүйлгээ (блокт орших хамгийн эхний гүйлгээ)
  • transaction identifier - гүйлгээний таних тэмдэг
  • UTXO - Unspent transaction output - гүйлгээнд зарцуулагдаагүй гаралт
  • fork - салаалт - нэгээс илүү адил өндөртэй блок үүсэх
  • stale/orphan block - салаалсаны дараа хүчингүй болсон блок
  • true orphan block - өмнөх блокоосоо салсан буюу өмнөх блок нь мэдэгдэхгүй болсон блок
  • genesis block - биткойны хамгийн эхэнд үүссэн блок
  • raw transaction format - түүхий гүйлгээний формат
  • SPV - simplified payment verification - хялбаршуулсан гүйлгээний хяналт - гар утсанд түрийвч суулгасан тохиолдолд гинжэн блокийг бүхэлд нь download хийх нь тохиромжгүй учир, гүйлгээг хялбаршуулсан аргаар шалган баталгаажуулах
  • pubkey scripts - нийтийн түлхүүрийн скрипт - гүйлгээний гаралтанд орших скрипт бөгөөд, тухайн сатоши-нуудыг зарцуулах нөхцлүүдийг тусгасан байна. 
  • signature script - гарын үсэгтэй скрипт - pubkey scripts буюу нийтийн түлхүүрийн скрипт дээр нөхцлүүдийг ханган гүйлгээ хийсэн тохиолдолд энэ бичлэг үүснэ. 
  • EDCSA signature - EDCS гарын үсэг - Нийтийн түлхүүртэй холбоотой утга, тухайн нийтийн түлхүүр нь хэн нэгний нууц түлхүүрээс гаргаж авсан байна. Энэ гарын үсэг нь тухайн нийтийн түлхүүр лүү дамжуулсан сатоши-г зарцуулахад хэрэглэнэ:  
  • satoshi - биткойны хамгийн жижиг нэгж буюу 1 биткойны 100 саятай тэнцэнэ (0.00000001 BTC)



Sunday, August 9, 2015

Биткойны гүйлгээ хэрхэн хийгддэг вэ?



Энэ нийтлэлээрээ coindesk-ээс орчуулж, биткойн гүйлгээ хэрхэн гүйгддэг талаар тавилаа. Уг нь bitcoin.org-оос авья гэсэн ч coindesk дээрхи мэдээллүүд илүү уншихад дөхөмтэй тал эндээс орчуулав.


Харин зарим үг хэллэгүүдийн орчуулгыг ингэж орчуулахаар боллоо:

Биткойны гүйлгээ нь электрон түрийвчнээс хийгдэх бөгөөд аюулгүй байдлыг нь хангахын тулд дижиталаар шифрлэгдэнэ. Сүлжээн дэх этгээдүүд бүгд тухайн гүйлгээний талаар мэдээлэгдэх бөгөөд биткойны гүйлгээний түүх нь биткойн ухагдсан тэр цаг мөч хүртэл нь мөшгөж болно. 
Биткойны өөр дээрээ хадгалж үнэ өсөхийг нь хүлээх нь сайхан ч биткойн чинь төлбөрийн хэрэгсэл биз дээ тийм үү? Тийм болхоор биткойныг ашиглахад гүйлгээ хэрхэн хийгдэх вэ?
Биткойн гэж зүйл байхгүй зөвхөн гүйлгээний тэмдэглэгээ л гэж зүйл байна. 
Энэ бол хамгийн хачирхалтай нь юм: биткойн нь биетээр хаа нэгтээ оршихгүй, тэр ч байтугай таны системийн хард диск дээр ч биткойн гэж байхгүй. Бид биткойн эзэмших тухай ярьдаг, мөн биткойны хаяг зэргийг авч үзвэл дотор нь ямарваа нэгэн биткойн гэж байхгүй, өөрөөр хэлбэл түрийвчэн дотор мөнгө хэлбэрээр хадгалагдахгүй юм. Та ямар нэгэн биет зүйл рүү хуруугаараа заагаад, тэр ч байтугай компьютер дээр орших файл руу заагаад энэ биткойн байна гэж хэлэх боломжгүй. 
Тиймд биткойн биетээрээ оршихын оронд нэг хаягаас нөгөө хаяг руу хийгдэх гүйлгээний тэмдэглэгээ л гэж байна. Энэхүү гүйлгээний тэмдэглэгээнээс үүдэн тухайн түрийвчний баланс нь ихэсч багасна. Биткойн үүссэнээс хийгдсэн гүйлгээ болгоны тэмдэглэгээ нь гинжэн блок хэмээх нийтэд дэлгээстэй тэмдэглэгээнд бичигдэн үлдэнэ. Хэрвээ та ямарваа нэгэн биткойны хаягт орших балансыг мэдье гэвэл та гинжэн блок дахь мэдээллийг ашиглан дахин бүрдүүлэх замаар балансыг олох хэрэгтэй. 
Биткойны гүйлгээ нь ямаршуу янзтай харагдах вэ?
Хэрэв иргэн А нь иргэн Б рүү биткойн шилжүүлэх тохиолдолд, гүйлгээ нь 3 янзын мэдээлэл агуулагдана:
- оролт (input) - иргэн А рүү урьд нь анх аль хаягаас тухайн биткойныг шилжүүлсэн болох. (иргэн Я-аас бол түүний хаяг). 
- хэмжээ - Иргэн А нь Б рүү шилжүүлж буй биткойны тооны хэмжээ
- гаралт - Иргэн Б хүлээн авагчийн хаяг. 
Хэрхэн шилжүүлэх вэ?
Биткойныг та шилжүүлэхийн тулд 2 зүйл хэрэгтэй: Биткойны хаяг, хувийн нууц түлхүүр (private key). Биткойны хаяг нь рандом маягаар үүсгэгдэх бөгөөд тоо, үсэг холилдсон үгнээс бүрдэнэ. Хувийн нууц түлхүүр нь мөн тоо, үсэгнүүдээс бүрдсэн үг боловч үүний утгыг далд, чандлан нууцлах хэрэгтэй. 
Өөрөөр хэлбэл биткойны хаягийг шилэн хорготой сэифээр төлөөлүүлж болно. Бүх хүмүүс дотор нь юу байгааг мэдэж болох ч хувийн нууц түлхүүрийг ашигласнаар л дотроос нь гаргаж эсхүл дотор нь хийж болно. 
Иргэн А иргэн Б рүү биткойн шилжүүлэг хийх тохиолдолд хувийн нууц түлхүүрээ ашиглан шифрлэлт хийх болно. Шифрлэлт нь дараах мэдээллүүд дээр хийгдэнэ: 
- input дээрхи хэлснээр биткойны анхны гүйлгээ
- хэмжээ
- output - гаралт буюу хүлээн авагчийн хаяг. 
Ингэснээр иргэн А нь өөрийнхөө түрийвчнээс тухайн мэдээллийг биткойны сүлжээ рүү илгээнэ. Ингэсний дараа биткойны уурхайчид тухайн гүйлгээг баталгаажуулах ажилдаа орж, баталгаажуулалт амшилттай хийгдвэл, гүйлгээний блокт залгаж эцэст задлан тайлна. 
Би заримдаа гүйлгээг хийж дуустал хүлээх хэрэгтэй болох юм, яагаад вэ?
Таны гүйлгээг уурхайчид баталгаажуултал тодорхой хугацаа шаардагдана, тийм тул зарим тохиолдолд уурхайчидыг баталгаажуулж дуустал хүлээх хэрэгтэй болно. Биткойн протокол нь нэг блокийг малтаж дуустал ойролцоогоор 10 минут хүлээгдэхээр хийгдсэн байдаг.
Биткойноор төлбөрийг нь хийсэн бүтээгдэхүүнээ хүлээж авахаас өмнө зарим бизнесүүд блокийг баталгаажуултал хүлээлгэх бөгөөд эдгээр нь 10 минут хүлээлгэнэ гэсэн үг юм.
Зарим бизнесүүд гүйлгээг баталгаажуултал таныг хүлээлгэхгүй байж болно. Ингэснээрээ тухайн бизнес нь та төлбөр хийсэн биткойныг өөр зорилгоор дахин хэрэглэхгүй гэж итгэл хүлээлгэн азаа үзэж буй гэсэн үг юм бөгөөд энэ нь голцуу бага хэмжээний гүйлгээ хийгдсэн тохиолдолд байна.

Хэрвээ оролт гаралтын хэмжээ нь зөрүүтэй байвал яах вэ?

Дээр хэлсэнчлэн биткойн нь зөвхөн гүйлгээний тэмдэглэгээ байдлаар орших тул, таны түрийвч нь олон гүйлгээтэй байж болно. Магадгүй иргэн А таньд 2 биткойн илгээсэн, иргэн Б нь 3-ыг, иргэн В нь 1-ийг илгээсэн байж болох бөгөөд эдгээр нь тус тусдаа өөр өөр үед хийгдсэн гүйлгээнүүд юм.
Эдгээр нь таны түрийвчэнд автоматаар нийлбэр дүнгээрээ орж хадгадагдана гэсэн үг биш бөгөөд тэрний оронд өөр өөр гүйлгээ маягаар хадгалагдана.

Хэрэв та хүлээн авсан биткойныг иргэн Д-рүү шилжүүлсэн тохиолдолд, таны түрийвч урьд нь хүлээж авсан гүйлгээнүүдийг явуулах гэж буй хэмжээнд хүртэл нь хооронд нэмнэ.
Харин энэ тохиолдолд урьд нь хүлээгдэж авсан гүйлгээнүүдийн нийлбэр нь явуулах гэж буй хэмжээтэй яг таг тэнцүү байна гэж бараг байхгүй. Таны түрийвч гүйлгээний утгыг тасалж тоог нь тэнцүүлэхгүй боломжгүй, тийм учир та зөвхөн тухайн гүйлгээнүүдийг бүтнээр нь явуулж илүү явуулсан хэсгийг нь буцаан хариулт болгон явуулна.

Гүйлгээний шимтгэл гэж бий юу?

Зарим тохиолдолд байна, гэхдээ дандаа биш. Гүйлгээний шимтгэлийн хэмжээ олон янзын хүчин зүйлүүдээс хамаарна. Зарим түрийвчүүд нь гүйлгээний шимтгэлийг тогтоож болохоор хийгдсэн байна. Гүйлгээний аливаа нэг хэсэг нь хүлээн авагч ямар нэгэн шалтгаанаар аваагүй тохиолдолд шимтгэл хэмээн үзэгдэж уурхайчийн эзэмшил болно. ( Any portion of a transaction that isn’t picked up by the recipient or returned as change is considered a fee???)

Яг одоогийн байдлаар олон уурхайчид гүйлгээнүүдийг шимтгэлгүйгээр баталгаажуулж буй. Харин блок бүрдсэнээс үүдсэн шагнал нь яваандаа багассанаар уурхайчид шимтгэл шаардах төлөвтэй байна.

Гүйлгээний шимтгэлтэй нэг зовлонтой зүйл бол шимтгэлийн хэмжээг гаргах нь ярвигтай мөн хуучирсан аргаар тооцдог байсан. Энэ нь протоколийг хэд хэдэн удаа update хийсэний дараа засагдсан юм.

Биткойны гүйлгээ гүйцэтгэдэг үндсэн программыг нь update хийсэн тохиолдолд, гүйлгээний шимтгэлийг тооцоох аргыг өөрчилж болох ба ингэснээрээ хамгийн доод шимтгэлийг тооцох боломжтой болгоно.

Би гүйлгээний хийснийхээ төлөө тасалбар авч болох уу?

Биткойн нь гүйлгээний тасалбар гаргахаар анхнаасаа хийгдээгүй. Гэхдээ 0.9 хувилбараас хойш илүү хэрэглэгчдэд дөхөмтэй болгох үүднээс гүйлгээг өөр маягаар хийгддэг болно.
Мөн BitPay гэх мэт төлбөр гүйцэтгэгчэд нь гүйлгээний тасалбар, баталгаажуулалтын вэб хуудас гэх мэт илүү нэмэлт үйлчилгээнүүд үзүүлдэг. Эдгээр үйлчилгээ нь үндсэн биткойн гүйлгээнд байхгүй үйлчилгээ юм.

Би биткойныг бутархайгаар явуулж болох уу?

Биткойны гүйлгээ нь бутархайгаар хийгдэж болох бүрэн боломжтой. Сатоши нь биткойныг 1,000,000 сая хуваасны нэгтэй тэнцэх бөгөөд та 5430 хамгийн бага нь хэмжээний Сатоши-г биткойны сүлжээгээр илгээх боломжтой.





Friday, August 7, 2015

Уурхай: Биткойны хэрхэн нээж олдог вэ?


Энэ нийтлэлээр биткойн уурхай хэрхэн хийгддэг механизмыг орчуулж тайлав.

Харин зарим үг хэллэгүүдийн орчуулгыг ингэж орчуулахаар боллоо:
http://bitcoin-mn.blogspot.com/2015/08/blog-post_11.html

Уламжлалт мөнгөн тэмдэгтийг засгийн газраас хэвлэн шинээр эргэлтэнд оруулдаг. Харин биткойн шинэ тэмдэгтүүд нь хэрхэн шинээр гүйлгээнд ордог вэ?

Биткойныг бол хэвлэж эргэн оруулдаггүй харин нээн илрүүлж эргэлтэнд оруулна. Үүний тулд компьютерүүд хоорондоо өрсөлддөг.

Биткойн-ыг хэрхэн малтан гаргах вэ?

Хүмүүс бие биендээ биткойн шилжүүлэх болгонд гүйлгээний бичилт хийгдэх ба биткойны сүлжээ тодорхой хугацаанд хийгдсэн эдгээр гүйлгээнүүдийг цуглуулан блок болгон хувиргана. Харин уурхайчид (miners) нь энэхүү блокийг баталгаажуулж үндсэн тэмдэглэгээнд (general ledger) нийлүүлнэ.


Энэхүү үндсэн тэмдэглэгээ нь урьд нь хийгдэж байсан блокуудыг нийлүүлсэн урт хэмжээний тэмдэглэгээ бөгөөд үүнийг гинжин блок (blockchain) гэж нэрлэнэ.

Үндсэн тэмдэглэгээ буюу гинжэн блокийг ашиглаад урьд нь аль ч үед хийгдэж байсан ямарваа нэгэн гүйлгээг харах боломжтой. Шинээр блок үүсэх болгонд, энэ нь гинжэн блокт залгагдсанаар гинжэн блок нь цаг үед уртасч байна. Ямагт update хийгдэж буй блок нь оролцож буй хүн болгонд өгөгдсөнөөр, тэдгээр нь юу болж байгааг мэдэх боломжтой.

Үндсэн тэмдэглэгээ буюу гинжэн блокууд нь хуурамч тэмдэглэгээ байгаа эсэхэд хэрхэн итгэх вэ? Уурхайчидын гол роль нь энд л байна.

Биткойны блок бүрдсэн тохиолдолд "уурхайчид" блок доторхи мэдээллийг хаш (hash)-лаж, блок руу нэмэж гинжэн блок руу залгана.

Хаш-лалтаас үндсэн мэдээллийг сэргээж аван ямар ч боломжгүй, мөн үндсэн мэдээллийг хаш болгоход амар байна. Мөн хаш болгон давтагдашгүй байх хэрэгтэй. Хэрэв үндсэн мэдээллээс ганц үсэг өөрчлөхөд хаш-ийн утга тэс өөр болдог.

Уурхайчид мөн одоо хийгдэж буй гүйлгээнд хаш, гинжин блокийн сүүлчийн блокийн хаш-ийг мөн одоо хаш хйих гэж буй мэдээлэлдээ мөн нэмнэ.

Ингэснээр одоо хийгдэж буй блок нь өмнөх блокийн хаш утгаас хамаарах учир баталгаажуулалтын гинжэн хэлхээ үүснэ, мөн энэ маягаар дараа дараагийн блокууд мөн баталгаажна.

Хэрвээ хэн нэгэн нь гинжэн блокт аль хэдийн залгагдсан блокт өөрчлөлт хийсэн тохиолдолд тухайн блокийн хаш утга өөрчлөгдөнө. Ингэснээр хэн нэгэн нь блокийг баталгаажуулсан тохиолдолд блокт байгаа хувилбараас өөр хаш утга гарах учир энэ нь хуурамч гэж үзнэ.

Дээр өгүүлснээр, дараа дараагийн блокууд одоогийн блокоос шалтгаалах тул, хуурамч гэгдсэн блокоос хойших бүх блокууд баталгаагүй болно.

Биткойн-ыг олж авах өрсөлдөөн

Уурхайчид блокийг баталгаажуулах дээр өгүүлсэнээр явагдаж хоорондоо өрсөлддөг. Хэн нэгэн нь аль нэг цагт амжилттай хаш хийсэн тохиолдолд, тэдгээр уурхайчид 25 биткойноор шагнуулж, гинжэн блокт залгагдсанаар, сүлжээнд буй оролцогчдод энэ нь мэдээлэгдэнэ. Ийм маягаар шагнуулах нь биткойны гүйлгээг баталгаажуулах ашиг сонирхлыг оролцогчдод бий болгоно.

Асуудал нь мэдээллээс хаш гарган авахад амаргүй байдаг. Компьютерүүд хашийг амархан хийж гүйцэтгэнэ. Биткойны сүлжээ хашлалтыг хэцүү байхаар хийгдсэн байдаг, эс бөгөөс хүн бүр минут-д хашлалтыг зуу зуугаар нь баталгаажуулж бүх биткойнуудыг хэдхэн минутэнд "малтаж" орхино. Биткойны сүлжээ нь "ажлын баталгаажуулалт" (proof of work) гэсэн ухагдахууныг оролцуулснаар хаш-лалтыг зориуд хэцүү болгоно.

Биткойны протокол нь ямарваа нэгэн хуучин хийгдсэн хаш бүрийг хүлээн аваад байхгүй. Протоколийн шаардлага нь хаш нь тодорхой өөрийн гэсэн форматтай байна, мөн тодорхой хэмжээний нойл цифрүүдийг урд талд нь байрлуулсан байна. Хашийн утга ямар байхыг урьдчилан мэдэх боломжгүй, ямар нэгэн мэдээлэл нэмж оруулахад хашийн утга тэр чигээрээ өөрчлөгдөнө.

Уурхайчид блокт буй мэдээллийг өөрчлөх гэх мэт үйлдэл хийж болохгүй, харин тэд өөр утгатай хаш бүрдүүлэхийн тулд мэдээллийг өөрчлөх хэрэгтэй байдаг. Энэний тулд уурхайчид nonce дурын утгыг ашиглана. Nonce нь гүйлгээний утгатай хамтаар нийлүүлснээр хаш хийхэд бэлэн болно. Хэрвээ гарсан хаш нь шаардагдсан формат-д нийцэхгүй тохиолдолд nonce утгыг дахин өөрчилж дахин хаш хийх хэрэгтэй болно. Ингэснээр тухайн nonce болон мэдээллийн хаш-ийг протоколийн форматтай нийцүүлэх хүртэл дахин дахин nonce утгыг өөрчилж хаш хийгдэнэ. Формат-д таарах хаш-ийг олтол маш олон оролдлого хийгдэх ба уурхайчид энэ тохирох nonce утгыг олохын төлөө өрсөлдөнө. Уурхайчил ингэж биткойныг олдог.


дараах линкүүдээс ишлэн авав: http://www.coindesk.com/information/how-bitcoin-mining-works/
http://www.coindesk.com/information/how-do-bitcoin-transactions-work/