บทนำ
บล็อกเชน
ในฐานะนักพัฒนามากประสบการณ์และมีประสบการณ์หลายปี ฉันพบว่าเป็นเรื่องน่าพึงพอใจอย่างยิ่งที่จะแนะนำคุณตลอดกระบวนการสร้าง blockchain API แบบง่ายๆ โดยใช้ Flask มาเริ่มต้นการเดินทางที่น่าตื่นเต้นนี้ด้วยกัน!
เทคโนโลยีบล็อกเชนเป็นผู้นำในด้านการเงินและการเขียนโปรแกรม โดยดึงดูดความสนใจจากทั่วโลกด้วยคุณลักษณะที่เป็นนวัตกรรม โดยเฉพาะอย่างยิ่งมันทำงานผ่านระบบกระจายอำนาจ ซึ่งหมายความว่าไม่มีหน่วยงานเดียวที่ควบคุมธุรกรรมหรือฐานข้อมูล จุดแข็งอยู่ที่การส่งเสริมความโปร่งใสและการรักษาความปลอดภัยที่แข็งแกร่ง
บางคนอาจสงสัยว่า Blockchain คืออะไรกันแน่
โดยพื้นฐานแล้ว Blockchain หมายถึงการเชื่อมต่อระหว่างบล็อก ไฟล์ หรือโครงสร้างข้อมูลที่เกี่ยวข้อง ทั้งหมดนี้อยู่ภายใต้การเข้ารหัส มันคล้ายกับความปลอดภัยตามแนวทางการเข้ารหัส ระบบนี้จะหมุนเวียนและกระจายธุรกรรมภายในเครือข่ายโดยที่ผู้เข้าร่วมโต้ตอบและสนับสนุนกลไกการเข้ารหัสเพื่อให้เห็นพ้องและรักษาความน่าเชื่อถือ
เทคโนโลยีที่อยู่เบื้องหลังบล็อคเชนพิสูจน์คุณค่าของมันต่อภัยคุกคามและช่องโหว่ทางดิจิทัลที่อาจเกิดขึ้น โดยนำเสนอสภาพแวดล้อมที่ปลอดภัยยิ่งขึ้นสำหรับการจัดการข้อกังวลด้านความปลอดภัยทางไซเบอร์ พูดง่ายๆ ก็คือเทคโนโลยีนี้สามารถป้องกันภัยคุกคามทางไซเบอร์ได้อย่างมีประสิทธิภาพ ทำให้เรามีแพลตฟอร์มที่ปลอดภัยในการรับมือกับความท้าทายของภูมิทัศน์ดิจิทัลสมัยใหม่ของเรา
หลามในบล็อคเชน
Python โดดเด่นในฐานะหนึ่งในภาษาการเขียนโปรแกรมที่หลากหลายและปรับเปลี่ยนได้มากที่สุด ทำให้เป็นตัวเลือกยอดนิยมสำหรับวิศวกรรมซอฟต์แวร์ในโดเมนต่างๆ ฟังก์ชันการทำงานทำให้มันแตกต่าง โดยเป็นตัวเลือกที่เลือกใช้เนื่องจากคุณสมบัติของมัน มีไวยากรณ์ที่กระชับซึ่งต้องใช้บรรทัดน้อยกว่าในการทำงานให้สำเร็จ เมื่อเทียบกับภาษาอื่นๆ มากมาย ไวยากรณ์ที่ได้รับการปรับปรุงนี้มีประโยชน์เมื่อต้องแก้ไขข้อผิดพลาดและจุดบกพร่อง
Python มีระบบนิเวศที่มีชีวิตชีวาพร้อมด้วยห้องสมุดมากมายและหลากหลายพร้อมการเดินทางที่หลากหลายและเจริญรุ่งเรือง ประการที่สี่ ไลบรารีเช่น PyBrown และ Dwell มีฟังก์ชันการเข้ารหัสและการคำนวณ และเฟรมเวิร์กเช่น Flask, Django มีประโยชน์สำหรับ API และอินเทอร์เฟซแอปพลิเคชันเว็บ ห้องสมุดต่างๆ ต่างก็ใช้ Browser และ Vyper เพื่อการปรับใช้สัญญาอัจฉริยะ
Python รองรับหลายภาษา เช่น C++, Java, Javascript และ JavaScript และ Javailability
ผู้ชม
ตอนนี้คำถามที่แท้จริงคือจะใช้ Python ในการพัฒนาแอปพลิเคชันบล็อกเชนได้อย่างไร
ขอขอบคุณที่ให้ความช่วยเหลือจาก Python ใน Blockchain ความร่วมมือของคุณจะเริ่มกระบวนการของพวกเขา นักพัฒนาจะต้องดำเนินการกับสคริปต์นี้
แปลเป็นสระว่ายน้ำหรูหรา
การตั้งค่าสภาพแวดล้อมการพัฒนา
เพื่อให้มั่นใจว่าผลลัพธ์จะประสบความสำเร็จ ก่อนอื่นเรามาทำความเข้าใจปัญหาก่อนจะลงลึกลงไป ต่อไปนี้คือวิธีที่เราจะรับมือกับความท้าทายที่มีอยู่:
เมื่อพูดถึงการกำหนดค่า Python มีกระบวนการตั้งค่าที่ง่ายที่สุด
เรามาดูกันโดยละเอียด:
การติดตั้ง Python
- เยี่ยมชมเว็บไซต์อย่างเป็นทางการและดาวน์โหลด Python เวอร์ชันล่าสุด: https://www.python.org/downloads/
- ดาวน์โหลดตามระบบปฏิบัติการของคุณ (Windows, MacOS, Linux)
- มันมาพร้อมกับตัวเรียกใช้งาน Python ดังนั้นโปรดตรวจสอบคู่มือการติดตั้ง ซึ่งจะติดตั้ง Python บนระบบของคุณ
ในฐานะนักวิจัย ฉันจะยืนยันการติดตั้ง Python ได้สำเร็จโดยการพิมพ์ `python –version` หรือ `python3 –version` ในเทอร์มินัลหรือพร้อมท์คำสั่ง นี่จะแสดงเวอร์ชันของ Python ที่ใช้งานอยู่บนระบบของฉันในปัจจุบัน
โปรดตรวจสอบให้แน่ใจว่าคุณติดตั้ง Python เวอร์ชันล่าสุดซึ่งปัจจุบันคือ 3.12 อย่างไรก็ตาม เลือกใช้เวอร์ชันก่อนหน้าก็ต่อเมื่อมีข้อกำหนดเฉพาะสำหรับเครื่องมือหรือยูทิลิตี้บางอย่าง
การเลือก IDE
หลังจากที่คุณติดตั้ง Python บนระบบของคุณสำเร็จแล้ว ขั้นตอนต่อไปที่สำคัญคือการเลือกสภาพแวดล้อมการพัฒนาที่เหมาะสม ขั้นตอนนี้มีความสำคัญเนื่องจากการเลือก IDE ที่มีการกำหนดค่าอย่างดีจะเป็นรากฐานสำหรับโปรเจ็กต์ที่กำลังจะมาถึงทั้งหมดของคุณ
มีสอง IDE หลัก:
PyCharm: PyCharm มีต้นกำเนิดมาจาก JetBrains โดยมีความโดดเด่นในฐานะ Integrated Development Environment (IDE) อันดับต้นๆ สำหรับผู้ใช้ Python เครื่องมืออันทรงพลังนี้มีทรัพยากรมากมายที่ออกแบบมาเพื่อเพิ่มประสิทธิภาพการเขียนโค้ดของคุณในฐานะนักพัฒนา
เครื่องมือนี้มีฟังก์ชันที่มีประโยชน์มากมาย รวมถึงการเติมโค้ดอัจฉริยะแบบเรียลไทม์ซึ่งจะเติมเทมเพลตโค้ดโดยอัตโนมัติตามฟังก์ชันที่มีอยู่ Pycharm โดดเด่นอย่างแท้จริงเมื่อพูดถึงเครื่องมือแก้ไขข้อบกพร่อง โดยมีคุณสมบัติต่างๆ เช่น การก้าวผ่านโค้ด การรันโค้ดทั้งบล็อก การตั้งค่าเบรกพอยต์หลายจุดเพื่อระบุตำแหน่งที่เกิดข้อผิดพลาด และคอนโซลสำหรับการรันโค้ดในส่วนเล็กๆ ในขณะที่ตรวจสอบตัวแปรไปพร้อมๆ กัน
ขั้นตอนในการตั้งค่า Pycharm:
- เยี่ยมชมเว็บไซต์อย่างเป็นทางการและดาวน์โหลด PyCharm:
- https://www.jetbrains.com/pycharm/download/?section=mac
- ตอนนี้ทำตามคำแนะนำป๊อปอัป
- เมื่อการติดตั้งเสร็จสิ้น ให้เปิด Pycharm และกำหนดค่าโปรเจ็กต์และล่าม Python ของคุณดังนี้:
ไปที่การตั้งค่า จากนั้นเลือกโปรเจ็กต์ของคุณ ค้นหาส่วน Project Interpreter และเลือกเวอร์ชัน Python ที่ถูกต้องที่คุณได้ติดตั้งไว้แล้วจากที่นั่น
Jupyter Notebook: Jupyter Notebook เป็นสภาพแวดล้อมการพัฒนาแบบรวมบนเว็บหรือ IDE ซึ่งคุณสามารถเขียนและรันโค้ดได้ โดยเฉพาะ Python นอกจากนี้ยังใช้เพื่อวัตถุประสงค์ในการแก้ไขข้อความอีกด้วย คุณสามารถเรียกใช้ Jupyter Notebook บน Visual Studio Code (VSCode) จากระยะไกลได้ พร้อมด้วยส่วนขยายที่เข้ากันได้
ขั้นตอนในการตั้งค่า Jupyter Notebook:
- เปิดอินเทอร์เฟซบรรทัดคำสั่งของคุณ: เรียกใช้คำสั่ง pip ติดตั้งโน้ตบุ๊ก
- เริ่ม Jupyter Notebook ด้วยคำสั่ง: jupyter notebook
การติดตั้งไลบรารีที่จำเป็น
นี่คือห้องสมุดบางส่วนที่จะช่วยยกระดับประสบการณ์การพัฒนาบล็อกเชนของคุณ:
- Flask: Flask เป็นเฟรมเวิร์กของ Python ที่ใช้ในการสร้างเว็บแอปพลิเคชันและ RESTful API ในบล็อกเชน สามารถใช้เพื่อสร้างอินเทอร์เฟซเว็บ เช่น แดชบอร์ดและอินเทอร์เฟซ DApps
- ติดตั้งขวด : pip ติดตั้งขวด
- คำขอ: คำขอคือไลบรารี HTTP สำหรับการจัดการและส่งคำขอและการตอบกลับ HTTP ในบล็อกเชน คำขอจะมีประโยชน์ในการเชื่อมต่อกับเครือข่ายบล็อกเชนและการสืบค้น
- คำขอติดตั้ง: คำขอติดตั้ง pip
- Pysha3: Pysha3 เป็นไลบรารีที่สำคัญที่สุด ซึ่งใช้สำหรับอัลกอริธึมการแฮช SHA-3 เช่น SHA3-256 และ SHA3-512 การแฮชเป็นคุณลักษณะอันล้ำค่าของเทคโนโลยีบล็อกเชนที่เอื้อต่อความสมบูรณ์และความปลอดภัย
- ติดตั้ง pysha3: pip ติดตั้ง pysha3
- Web3.py: Web3.py- ผู้ไม่ฝักใฝ่ฝ่ายใดของไลบรารีที่มีการใช้งานอย่างสูงและมีฟังก์ชันการทำงานที่หลากหลาย เช่น การโต้ตอบกับสัญญาอัจฉริยะ การสืบค้นข้อมูลบล็อกเชน และการส่งธุรกรรม Web3 เป็นไลบรารีบน Ethereum ที่มีประโยชน์สำหรับการจัดการธุรกรรม
- ติดตั้ง web3.py: pip ติดตั้ง web3
- Pycryptodome: Pycryptodome เป็นแพ็คเกจ Python เต็มรูปแบบของฟังก์ชันการเข้ารหัสระดับต่ำ ไลบรารีนี้มีฟังก์ชันสำหรับการรักษาความปลอดภัยและความสมบูรณ์ของข้อมูล เช่น การแฮช การเข้ารหัส การถอดรหัส และการดำเนินการด้านการเข้ารหัสอื่นๆ
- ติดตั้ง pycryptodome: pip ติดตั้ง pycryptodome
- Pandas: Pandas เป็นไลบรารีการวิเคราะห์และจัดการข้อมูลที่มีประสิทธิภาพซึ่งมีแพ็คเกจโครงสร้างข้อมูลและฟังก์ชันที่มีประโยชน์สำหรับการวิเคราะห์และการแสดงภาพบล็อกเชนและบันทึกธุรกรรม
- ติดตั้งแพนด้า: pip ติดตั้งแพนด้า
- SQLAlchemy: SQL คือฐานข้อมูล และ SQLAlchemy เป็นชุดเครื่องมือ SQL ที่มีการแมปเชิงวัตถุสัมพันธ์สำหรับ Python รองรับการทำงานของฐานข้อมูลและการโต้ตอบกับนามธรรมระดับสูง Blockchain เป็นฐานข้อมูลแบบกระจายไลบรารีนี้จะใช้เพื่อจัดการและสืบค้นฐานข้อมูลเชิงสัมพันธ์และจัดเก็บบันทึกธุรกรรมพร้อมกับข้อมูลรับรองผู้ใช้
- ติดตั้ง SQLAlacemy: pip ติดตั้ง SQLAlchemy
- Numpy: Numoy เป็นไลบรารี่ของ Python ที่ใช้กันอย่างแพร่หลาย และได้รับการปรับให้เข้ากับแอปพลิเคชันต่างๆ เป็นอย่างดี ใช้สำหรับการดำเนินการเชิงตัวเลขและสนับสนุนเอนทิตีทางคณิตศาสตร์ เช่น อาร์เรย์ เมทริกซ์ และช่วงของฟังก์ชันและการดำเนินการเหนือสิ่งเหล่านั้น ใน Blockchain Numpy สามารถใช้สำหรับการประมวลผลและจำลองบันทึกธุรกรรมและคำนวณอัลกอริทึมเชิงตรรกะ
- ติดตั้ง Numpy: pip ติดตั้ง numpy
ทำความเข้าใจแนวคิดบล็อคเชน
พูดง่ายๆ ก็คือ Blockchain สามารถเปรียบได้กับหนังสือประวัติศาสตร์ที่มีการกระจายอำนาจที่ใช้ร่วมกัน หนังสือเล่มนี้แตกต่างจากบันทึกแบบเดิมๆ ที่ถูกเก็บไว้ในศูนย์กลางแห่งเดียว หนังสือเล่มนี้จะถูกคัดลอกและอัปเดตในหลายสถานที่พร้อมๆ กัน แต่ละสำเนาเหล่านี้มีความสำคัญเท่ากัน และไม่มีหน่วยงานเดียวที่ควบคุมทั้งเครือข่าย ผู้เข้าร่วมทุกคนมีส่วนช่วยในการบำรุงรักษาแทน
หากคุณเจาะลึกและเข้าใจโครงสร้างบล็อคเชนจะมีลักษณะดังนี้:
บล็อก(ธุรกรรม)——-***โซ่***——-บล็อก
มีองค์ประกอบสามประการ:
- บล็อก: บล็อกคือเซลล์ที่เก็บข้อมูลหรือธุรกรรม Block จะจัดเก็บรายการธุรกรรมเฉพาะ สามารถสร้างบล็อกได้หรือเราสามารถพูดได้ว่าสามารถขุดบล็อกได้โดยใช้กลไกที่เป็นเอกฉันท์ต่างๆ ทุกบล็อกจะมีชุดตัวระบุเฉพาะของตัวเองซึ่งเรียกอีกอย่างว่าการแฮช เทคนิคการแฮชมีประโยชน์ในการเข้ารหัสข้อมูลในบล็อก
- ธุรกรรม: ธุรกรรมคือการแลกเปลี่ยนสกุลเงินข้อมูลภายในเครือข่ายบล็อกเชนที่เกิดขึ้นในบันทึกต่างๆ รายละเอียดธุรกรรมจะถูกจัดเก็บไว้ในบล็อกพร้อมๆ กันด้วยชุดโปรโตคอลที่เรียกว่าฉันทามติ
- เชน: ดังที่เราทราบกันดีอยู่แล้วว่าบล็อคเชนมีความคล้ายคลึงกับรายการที่เชื่อมโยงซึ่งมีการเชื่อมต่ออยู่ระหว่างบล็อค ลิงค์เหล่านี้เรียกอีกอย่างว่าโซ่ เนื่องจากแต่ละพอยน์เตอร์ในรายการลิงค์เชื่อมต่อกันผ่านลิงก์ทั้งหมดเหมือนกันสำหรับบล็อก เหล่านี้คือชุดของบล็อกที่เชื่อมต่อกันด้วยแฮชของบล็อกก่อนหน้า ซึ่งทำให้มั่นใจได้ว่าข้อมูลจะมีความสมบูรณ์และความปลอดภัยของบล็อกเชน วัตถุประสงค์ของการเปลี่ยนแปลงไม่เพียงเพื่อใช้เป็นลิงก์ระหว่างบล็อกก่อนหน้าและบล็อกถัดไป แต่ยังเพื่อให้ลิงก์พร้อมกับหลักการแฮชและการเข้ารหัส
ความสำคัญของการกระจายอำนาจ ความไม่เปลี่ยนรูป และกลไกฉันทามติ:
- การกระจายอำนาจ: Dการกระจายอำนาจเป็นคุณสมบัติที่สำคัญที่สุดของบล็อคเชน ในกลไกนี้ ไม่มีหน่วยงานใดที่สามารถควบคุมฐานข้อมูลทั้งหมดได้ ซึ่งป้องกันความล้มเหลวของระบบบล็อคเชนเนื่องจากความคลาดเคลื่อนของใครก็ตาม เนื่องจากการกระจายอำนาจที่มีระบบเอนเอียงจึงแทบจะเป็นไปไม่ได้เลย ผู้เข้าร่วมทุกคนในอุปกรณ์จะรักษาสำเนาของบล็อคเชน ซึ่งรับประกันความโปร่งใสและยับยั้งความล้มเหลวหรือการจัดการแบบรวมศูนย์
- ความไม่เปลี่ยนรูป: เมื่อข้อมูลถูกเขียนลงในบล็อกเชนแล้ว จะไม่สามารถเปลี่ยนแปลงได้หากไม่แก้ไขบล็อกที่ตามมาทั้งหมด การเปลี่ยนแปลงบล็อกที่ตามมาทั้งหมดในบล็อกเชนนั้นมีราคาแพงในการคำนวณและไม่มีประสิทธิภาพอย่างมากซึ่งนำไปสู่ความล้มเหลว การเปลี่ยนแปลงบล็อกใด ๆ จะต้องกระทำผ่านการแฮชแบบเข้ารหัส ดังนั้นการเปลี่ยนแปลงทั้งหมดที่ทำเพียงครั้งเดียวไม่สามารถยกเลิกได้ ทำให้บล็อคเชนไม่เปลี่ยนรูป
- กลไกฉันทามติ: ชุดโปรโตคอลที่ควบคุมความจำเป็นทั้งหมดของบล็อกเชน โหนดทั้งหมดในเครือข่ายจำเป็นต้องยอมรับวิธีการ กลไกฉันทามติถูกนำมาใช้เพื่อปรับปรุงโหนดและรับรองว่าโหนดทั้งหมดในเครือข่ายอยู่ในหน้าเดียวกัน
การสร้างบล็อกเชนอย่างง่าย
การสร้างคลาสบล็อก
ในโค้ดข้างต้น เราได้กำหนดคลาส Block สำหรับแอตทริบิวต์ทั้งหมด
โครงสร้างบล็อก:
- ดัชนี: ดัชนีคือจำนวนเต็มที่แสดงตำแหน่งของบล็อกภายในบล็อกเชน การทำดัชนีช่วยระบุลำดับของบล็อคเชน
- บล็อก Genesis คือบล็อกเริ่มต้นที่มีดัชนี = 0
- การประทับเวลา: การประทับเวลาจะจัดเก็บอินสแตนซ์ที่บล็อกถูกสร้างขึ้นในรูปแบบของสตริง สิ่งนี้จะช่วยในการรักษาบันทึกของบล็อกเหมือนเมื่อมีการขุดบล็อกหรือเพิ่มลงในบล็อกเชน
- ธุรกรรม: สิ่งเหล่านี้แสดงเป็นเวกเตอร์ของออบเจ็กต์ธุรกรรม โดยที่แต่ละธุรกรรมแสดงถึงการถ่ายโอนข้อมูลหรือมูลค่าระหว่างผู้เข้าร่วม เก็บธุรกรรมทั้งหมดที่รวมอยู่ในบล็อก
- แฮชและแฮชก่อนหน้า: แฮชก่อนหน้าเก็บแฮชที่เข้ารหัสของบล็อกก่อนหน้า ในขณะที่แฮชเป็นสตริงของข้อมูลการเข้ารหัสที่สับสนหรือแฮช
เราได้ใช้วิธี SHA3-256 เพื่อคำนวณแฮชของบล็อก
การสร้างคลาส Blockchain
กำหนดคลาส Blockchain เพื่อจัดการเชนและวิธีการเพิ่มบล็อกใหม่
ในตัวอย่างโค้ดที่ให้มา บล็อกการกำเนิดหมายถึงบล็อกเริ่มต้นหรือบล็อกการก่อตั้งภายในบล็อกเชน ฟังก์ชัน get_latest_block ดึงข้อมูลบล็อกล่าสุด และใช้ add_block เพื่อแทรกบล็อกใหม่เข้าไปในห่วงโซ่
การนำหลักฐานการทำงานไปใช้
พูดง่ายๆ ก็คือ อัลกอริธึมที่เป็นเอกฉันท์จะกำหนดแนวทางที่ผู้เข้าร่วมเครือข่ายทั้งหมดต้องอนุมัติก่อนจึงจะสามารถเพิ่มบล็อกใหม่หรือสร้างบล็อกใหม่ภายในเครือข่ายได้ หลักเกณฑ์เหล่านี้มีรูปแบบที่แตกต่างกัน
หลักฐานการเดิมพัน: การเลือกเป็นผู้ตรวจสอบจะขึ้นอยู่กับจำนวนเงินที่ลงทุนหรือเดิมพัน ยิ่งเดิมพันมากเท่าไร โอกาสที่จะได้รับเลือกให้สร้างหรือตรวจสอบบล็อกก็จะยิ่งมากขึ้นเท่านั้น
กระบวนการตรวจสอบ (หลักฐานการทำงาน): กระบวนการนี้มีต้นกำเนิดจาก Bitcoin ปัจจุบันมักใช้เป็นมาตรการด้านความปลอดภัย ในระบบ Proof of Work ผู้เข้าร่วมจะแข่งขันกันเพื่อแก้ปัญหาทางคณิตศาสตร์ที่ซับซ้อน การดำเนินการหลักฐานการทำงานประกอบด้วยหลายขั้นตอน:
- การสร้างบล็อก: นักขุดรวบรวมธุรกรรมที่จะดำเนินการและเพิ่มลงในบล็อก
- การแฮชบล็อก: ประการแรก Miner จะระบุ nonce ซึ่งจากนั้นจะถูกส่งผ่านฟังก์ชันการเข้ารหัส และสีดำจะถูกแฮชด้วยตัวระบุที่ไม่ซ้ำกัน
- การขุด: การขุดเป็นการเปลี่ยนแปลง nonce ซ้ำแล้วซ้ำอีกเพื่อค้นหาแฮชที่สมบูรณ์แบบที่ตรงตามข้อกำหนดความยากของเครือข่าย
- การออกอากาศบล็อก: เมื่อคุณได้รับแฮชที่ถูกต้องแล้ว คนขุดแร่จะออกอากาศบล็อกนั้นในเครือข่ายและผู้เข้าร่วมคนอื่น ๆ จะตรวจสอบ
- การเพิ่มบล็อกลงในบล็อกเชน: หากพบว่าบล็อกนั้นถูกต้อง บล็อกนั้นจะถูกเพิ่มลงในบล็อกเชน และนักขุดจะได้รับรางวัล
- การปรับความยาก: เครือข่ายจะปรับความยากของปริศนา PoW เป็นระยะเพื่อให้แน่ใจว่าบล็อกถูกขุดในอัตราที่สม่ำเสมอ แม้ว่าพลังการคำนวณทั้งหมดจะเปลี่ยนไปก็ตาม
คุณสามารถเรียบเรียงใหม่ได้ดังนี้: นอกจากนี้ ยังมีวิธีการอื่นนอกเหนือจาก Proof of Stake มาตรฐาน เช่น Delegated Proof of Stake (DPos) ซึ่งเลือกผู้ร่วมประชุม และ Byzantine Fault Tolerance (PBFT) เพื่อปรับปรุงความยืดหยุ่นของระบบ
การเพิ่มหลักฐานการทำงานให้กับบล็อคเชน
แก้ไขคลาส Block เพื่อรวมแอตทริบิวต์การพิสูจน์และวิธีการ proof_of_work:
การสร้าง Blockchain API อย่างง่ายด้วย Flask
<ข>1. การตั้งค่าขวด
ติดตั้ง Flask:
pip ติดตั้ง Flask
<ข>2. การสร้าง API
สร้างแอป Flask และกำหนดจุดสิ้นสุดสำหรับการเพิ่มบล็อกและดูบล็อกเชน
การเรียกใช้และการทดสอบแอปพลิเคชัน
1. การเรียกใช้แอป Flask
เรียกใช้แอป Flask:(ในบรรทัดคำสั่งของคุณ )
python app.py
<ข>2. ทดสอบกับบุรุษไปรษณีย์
ทำการร้องขอโดยดำเนินการคำสั่งนี้:
ดูบล็อคเชน:curl http://localhost:5000/chain
จากความคิดเห็นข้างต้น แอปพลิเคชันจะถูกโฮสต์บน localhost:5000/chain
ตัวอย่างสดของการสร้างแอปพลิเคชันบล็อคเชน
<ข>1. การดำเนินการทีละขั้นตอน
ต่อไปนี้คือรายละเอียดโดยละเอียดของกระบวนการทั้งหมดที่จำเป็นสำหรับการสร้างแอปพลิเคชันบล็อกเชน:
Sorry. No data so far.
2024-09-04 13:39