สถานะของการปรับขนาด Ethereum

บล็อก 1NewsDevelopersEnterpriseBlockchain ExplainedEvents and ConferencesPressจดหมายข่าว

สมัครรับจดหมายข่าวของเรา.

ที่อยู่อีเมล

เราเคารพความเป็นส่วนตัวของคุณ

หน้าแรกบล็อก Blockchain อธิบาย

สถานะของการปรับขนาด Ethereum

ภาพรวมโดยสังเขปของความท้าทายและแนวทางแก้ไขในการปรับขนาดเครือข่าย Ethereum โดย ConsenSys เมษายน 24, 2018 โพสต์เมื่อเมษายน 24, 2018

การกำเนิดของ Enterprise Ethereum ในปี 2560


นักพัฒนา Ethereum รู้มานานแล้วว่าการปรับขนาดเครือข่ายเป็นเรื่องที่ควรค่าแก่การอภิปรายและการลงทุน อย่างไรก็ตามเรื่องนี้ไม่ได้แพร่กระจายออกไปจากชุมชนนักพัฒนา แต่จนถึงปลายปี 2560 เมื่อแอปพลิเคชันแบบกระจายอำนาจ (dApp) ชื่อ CryptoKitties ดึงดูดการเข้าชมจำนวนมากมันเริ่มทำให้เครือข่ายช้าลง นอกเหนือจากความหน่วงแฝงของเครือข่ายแล้วราคาของก๊าซซึ่งเป็นค่าธรรมเนียมที่ต้องใช้ในการดำเนินการแต่ละครั้งภายในสัญญาบน Ethereum blockchain – พุ่งสูงขึ้นเนื่องจากผู้ใช้แข่งขันกันเพื่อให้ธุรกรรมของตนได้รับการตรวจสอบ.

แม้ว่าตอนนี้เรื่องราวจะถูกรายงานมากเกินไปและหมดไปแล้ว แต่สถานการณ์ของ CryptoKitties เปิดเผยว่า Ethereum ในสถานะปัจจุบันอาจไม่พร้อมสำหรับปริมาณการรับส่งข้อมูลที่จะมาพร้อมกับการเปิดตัว dApp ที่ประสบความสำเร็จ ความเร็วที่ช้าและต้นทุนการใช้งานที่ผันผวนทำให้ผู้คนออกห่างจากแพลตฟอร์มและแอปพลิเคชัน นักพัฒนา DApp กำลังเรียกเก็บเงินล่วงหน้าเพื่อเปิดตัวแอปพลิเคชั่นแรกที่นำมาใช้อย่างแพร่หลายดังนั้นนักพัฒนา Ethereum จึงต้องดำเนินการต่อเพื่อขยายขนาดบล็อกเชน.

“ Trilemma”

ทฤษฎีหนึ่งของเทคโนโลยีบล็อกเชนคือเครือข่ายสามารถรองรับสองสิ่งต่อไปนี้เท่านั้น: ความปลอดภัยการกระจายอำนาจและความสามารถในการขยายขนาด “ trilemma” ซึ่งเป็นที่ทราบกันดีว่าเป็นความท้าทายของนักพัฒนา Ethereum เนื่องจากพวกเขาพยายามที่จะรักษาหลักการสำคัญของ blockchain (การกระจายอำนาจและความปลอดภัย) ในขณะที่ปรับขนาดเพื่อการยอมรับและการนำไปใช้อย่างแพร่หลาย ตัวอย่างเช่นการแก้ไขความสามารถในการปรับขนาดได้ทันทีบางส่วนส่งผลกระทบอย่างรุนแรงต่อความปลอดภัยหรือการกระจายอำนาจ:

  1. การใช้ altcoins เป็นวิธีแก้ปัญหาทางทฤษฎีอย่างหนึ่งสำหรับข้อกังวลเรื่องความสามารถในการปรับขนาด ตัวเลือกนี้คือการละทิ้งแนวคิดของ blockchain หนึ่งรายการที่ธุรกรรมทั้งหมดเกิดขึ้นและใช้รูปแบบที่มี altcoins หลายตัวอยู่ร่วมกันซึ่งทั้งหมดทำงานบนบล็อคเชนแยกกัน ปริมาณการใช้งานต่อบล็อกเชนที่ลดลงจะช่วยให้กลุ่มบล็อกเชนนี้สามารถขยายขนาดได้ อย่างไรก็ตามเนื่องจากมีโหนดน้อยลงที่ทำหน้าที่ในแต่ละบล็อกเชนแต่ละบล็อกเชนจึงมีความอ่อนไหวต่อการโจมตีและผู้ใช้ที่เป็นอันตรายมากขึ้น ดังนั้นการใช้ altcoins จึงรักษาการกระจายอำนาจและปรับปรุงความสามารถในการปรับขยาย แต่ส่งผลกระทบต่อความปลอดภัยอย่างรุนแรง.
  2. เพิ่มขนาดบล็อก เป็นอีกหนึ่งวิธีแก้ปัญหาทางทฤษฎีสำหรับความกังวลเรื่องความสามารถในการปรับขนาด หากชุมชน Ethereum โหวตให้เพิ่มขนาดของแต่ละบล็อกโหนดทั้งหมดยังคงสามารถดำเนินการได้ทั้งหมด แต่สามารถทำธุรกรรมได้มากขึ้นในเวลาเดียวกันดังนั้นจึงเร่งความเร็วเครือข่าย อย่างไรก็ตามด้วยขนาดบล็อกที่ใหญ่ขึ้นการทำธุรกรรมแต่ละรายการต้องใช้พลังงานมากขึ้นและโหนดน้อยลงก็จะสามารถใช้พลังงานจำนวนนั้นได้ ผลลัพธ์จะเป็นอนาคตที่เครือข่ายจะได้รับการดูแลโดยซูเปอร์คอมพิวเตอร์เพียงไม่กี่คนที่มีพลังการประมวลผลมหาศาลที่จำเป็นในการตรวจสอบแต่ละบล็อก ดังนั้นขนาดบล็อกที่เพิ่มขึ้นจึงรักษาความปลอดภัยและเพิ่มความสามารถในการขยายขนาด แต่จะลดการกระจายอำนาจของเครือข่ายลงอย่างมาก.

ความกังวลหลักในการพัฒนาบล็อกเชนคือความปลอดภัยและการกระจายอำนาจ ดังนั้นอุปสรรคหลักของความสามารถในการปรับขนาดคือทุกโหนดในปัจจุบันต้องประมวลผลทุกธุรกรรม แม้ว่าจะมีความปลอดภัยและกระจายอำนาจอย่างปฏิเสธไม่ได้ แต่กระบวนการนี้ไม่อนุญาตให้มีพื้นที่มากพอสำหรับการเติบโตที่ปรับขนาดได้ ดังนั้นคำถามจึงกลายเป็นว่าเราจะสร้าง Ethereum ให้สามารถปรับขนาดได้อย่างไรโดยไม่กระทบต่อความปลอดภัยและการกระจายอำนาจ?

มีสี่โปรโตคอลหลักในการพัฒนาที่จะแก้ไขปัญหาเรื่องความสามารถในการปรับขนาดได้ Sharding, Plasma และ Raiden ได้รับการเสนอโดยเฉพาะเพื่อช่วยในการปรับขนาด Ethereum โปรโตคอลที่สี่ Casper มีขอบเขตที่กว้างกว่ามาก แต่จะมีผลกระทบต่อความสามารถในการปรับขนาดได้เหนือกว่าคนอื่น ๆ อีกมากมาย.

Sharding

Sharding เป็นวิธีการหนึ่งในการปรับขนาดที่รักษาการทำธุรกรรมทั้งหมดบนบล็อกเชนดั้งเดิมจึงเรียกว่าโซลูชัน “on-chain” Sharding แก้ไขปัญหาที่ธุรกรรมทั้งหมดบน Ethereum เป็นลำดับเนื่องจากทุกโหนดต้องประมวลผลทุกธุรกรรม Sharding ช่วยให้การดำเนินการทำงานไปพร้อม ๆ กันดังนั้นจึงเพิ่มจำนวนธุรกรรมต่อวินาทีที่ blockchain โดยรวมสามารถดำเนินการได้ ด้วยการชาร์ดเครือข่าย Ethereum จะแบ่งออกเป็นหลายกลุ่มของโหนด แต่ละกลุ่มเหล่านี้เป็นชาร์ดและแต่ละชาร์ดจะประมวลผลธุรกรรมทั้งหมดที่เกิดขึ้นภายในกลุ่มนั้น สิ่งนี้ช่วยให้เศษทั้งหมดในการประมวลผลธุรกรรมที่แตกต่างกันไปพร้อม ๆ กัน

ภายในแต่ละชาร์ดโหนดบางโหนดที่เรียกว่า “collators” จะสร้าง “collation” หรือชุดข้อมูลเกี่ยวกับชาร์ดนั้นเป็นประจำ การจัดเรียงแต่ละรายการมีข้อมูลต่อไปนี้:

  1. ข้อมูลเกี่ยวกับว่าส่วนใดของการจัดเรียงมาจาก.
  2. ข้อมูลเกี่ยวกับสถานะของชาร์ดก่อนที่ธุรกรรมจะถูกนำไปใช้.
  3. ข้อมูลเกี่ยวกับสถานะของชาร์ดหลังจากธุรกรรมจะถูกนำไปใช้.
  4. ลายเซ็นดิจิทัลจาก⅔ของ collators ที่ตรวจสอบความถูกต้องของข้อมูลในการเปรียบเทียบ

ทั่วทั้งเครือข่ายการจัดเรียงจากแต่ละชิ้นส่วนจะรวมเป็นบล็อกเดียวและเพิ่มเข้าไปในบล็อกเชนของ Ethereum ดังนั้น Sharding จึงอนุญาตให้กลุ่มของโหนดเหล่านี้ประมวลผลและตรวจสอบธุรกรรมได้ในขณะที่ข้อมูลเดียวที่เพิ่มลงในบล็อกเชนคือข้อมูลที่เจือจางที่พบในการเปรียบเทียบ ตัวอย่างเช่นหากมีเศษ 10 ชิ้นและแต่ละชาร์ดประมวลผลธุรกรรมห้ารายการจากนั้นบล็อกถัดไปจะรวมบันทึกธุรกรรมห้าสิบรายการบนบล็อกเชนแทนที่จะมีเพียงไม่กี่รายการที่เรียกใช้ธุรกรรมตามลำดับ.

สองประเด็นที่เกิดขึ้นกับการแตก อันดับแรกแต่ละชาร์ดต้องมีโหนดเพียงพอเพื่อให้มั่นใจในความปลอดภัยของเครือข่าย หากชาร์ดมีโหนดน้อยเกินไป⅔ของคอลเลเตอร์อาจถูกบุกรุกและเริ่มแสดงเจตนาร้าย ประการที่สองไม่มีวิธีง่ายๆในการประมวลผลธุรกรรมที่เกิดขึ้นระหว่างสองเศษแทนที่จะเป็นเพียงหนึ่งเดียว (ปัญหาที่ไม่มีอยู่ในหนึ่งบล็อกเชนทั้งหมด) วิธีการปัจจุบันต้องใช้ใบเสร็จและหลักฐานที่ยุ่งยาก.

พลาสม่า

Plasma เป็นอีกวิธีหนึ่งในการปรับขนาดที่ประมวลผลธุรกรรมแบบ“ off-chain” นั่นคือไม่ได้อยู่ใน Ethereum blockchain หลัก พลาสม่าช่วยให้บล็อกเชนจำนวนมาก (เรียกว่า “โซ่ลูก”) เกิดจากบล็อกเชนดั้งเดิม (เรียกว่า “รูทเชน”) ดังนั้นห่วงโซ่ลูกแต่ละตัวสามารถประมวลผลและรักษาบันทึกการทำธุรกรรมของตัวเองได้ในขณะที่อาศัยการรักษาความปลอดภัยพื้นฐานของห่วงโซ่ราก ด้วย Plasma ห่วงโซ่รากเป็นผู้บังคับใช้ทั่วโลกของการคำนวณที่เกิดขึ้นกับห่วงโซ่ลูกทั้งหมด อย่างไรก็ตามห่วงโซ่รากจะต้องได้รับการคำนวณก็ต่อเมื่อมีข้อพิพาทเกิดขึ้นภายในห่วงโซ่ลูกหนึ่ง วิธีนี้ช่วยให้เครือข่ายลูกโซ่ทั้งหมดสามารถแบ่งธุรกรรมทั้งหมดบนบล็อกเชนเพื่อเพิ่มความเร็วและประสิทธิภาพได้ดีที่สุด หากโหนดบนห่วงโซ่ลูกต้องการพวกเขาสามารถส่งธุรกรรมการออกและส่งออกบันทึกธุรกรรมของพวกเขาไปยังห่วงโซ่ราก.

วิธีนี้มีจุดแข็งเฉพาะอย่างหนึ่ง โซ่พลาสม่าแต่ละตัวสามารถมีคุณสมบัติและมาตรฐานของตัวเองได้ ซึ่งหมายความว่าเครือข่ายลูกที่แตกต่างกันสามารถรองรับธุรกรรมที่มีข้อกำหนดที่แตกต่างกัน (เช่นความเป็นส่วนตัว) ในขณะที่ทั้งหมดยังคงเกิดขึ้นภายในระบบนิเวศที่ปลอดภัยเดียวกัน.

ไรเดน

Raiden เป็นอีกหนึ่งโซลูชันการปรับขนาดแบบ off-chain ที่ช่วยให้โหนดสามารถรักษาบันทึกระหว่างกันได้โดยไม่ต้องให้ root chain ตรวจสอบทุกธุรกรรม สองโหนดสามารถเปิด “ช่องสถานะ” ระหว่างพวกเขาซึ่งเป็นช่องทางสองทางระหว่างผู้ใช้ “ ข้อความ” – ในรูปแบบของธุรกรรม – เกิดขึ้นระหว่างสองโหนดและมีการลงนามโดยแต่ละฝ่ายเพื่อให้แน่ใจว่าไม่เปลี่ยนรูป Raiden มีประโยชน์อย่างยิ่งสำหรับการชำระเงินที่เกิดขึ้นบ่อยครั้งและคาดหวังนั่นคือผู้ใช้ที่รู้ว่าพวกเขาจะจ่ายเงินให้ บริษัท $ 10 ต่อสัปดาห์สำหรับบริการหรือผู้ใช้ที่รู้ว่าพวกเขาจะใช้จ่ายเงินที่ร้านขายของชำในพื้นที่เป็นประจำ ด้วยธุรกรรมที่บันทึกและตรวจสอบระหว่างโหนดทั้งสองนี้แทนที่จะเป็นในแต่ละบล็อกเชนรูทจะปลดปล่อยทราฟฟิกจำนวนมหาศาล ผู้เข้าร่วมในช่องรัฐสามารถเลือกปิดธุรกรรมได้ตลอดเวลาและผลลัพธ์สุทธิของธุรกรรมทั้งหมดจะถูกส่งออกไปยัง root blockchain และรวมไว้ในบล็อกถัดไป นั่นหมายความว่าหลังจากสมัครใช้บริการ $ 10 / สัปดาห์หนึ่งปีผู้ใช้อาจมีการบล็อกยืนยันธุรกรรม $ 520 หนึ่งรายการแทนที่จะเป็น 52 ธุรกรรมแยกต่างหาก $ 10.

โซลูชัน Raiden มาพร้อมกับข้อแม้หลักประการหนึ่งและประโยชน์หลักอย่างหนึ่ง ข้อแม้คือโหนดสามารถสื่อสารกับ“ เพื่อนบ้าน” เท่านั้นซึ่งหมายความว่าหากโหนด A และโหนด B มีช่องสถานะเปิดอยู่และโหนด B และโหนด C มีช่องคำสั่งเปิดอยู่โหนด A จะไม่สามารถส่งเงินไปยังโหนด C ได้โดยตรง อย่างไรก็ตามธุรกรรมสามารถส่งต่อผ่านช่องทางในลักษณะที่ไม่สามารถถูกขโมยหรือถูกล็อกระหว่างทางได้ โหนด A สามารถส่งธุรกรรมไปยังโหนด C โดยใช้โหนด B เป็นตัวกลางในลักษณะที่โหนด B ไม่สามารถขโมยเงินได้ เพื่อประโยชน์หลัก Raiden จึงลดราคาก๊าซในแต่ละธุรกรรมลงอย่างมาก ธุรกรรมที่เกิดขึ้นนอกเครือข่ายระหว่างโหนดต้องการก๊าซในการประมวลผลน้อยกว่าธุรกรรมที่เกิดขึ้นบนห่วงโซ่ราก.

แคสเปอร์

Casper เป็นโปรโตคอลที่โมเดล Proof of Work (PoW) ปัจจุบันของ Ethereum จะเปลี่ยนเป็น Proof of Stake (PoS) ด้วย PoW ปัจจุบันนักขุดต้องใช้พลังงานเพื่อแก้สมการการเข้ารหัสและขุดบล็อก พวกเขาจะได้รับรางวัลถ้าพวกเขาแก้สมการ แต่กระบวนการนี้ต้องใช้พลังงานมหาศาล (และจะต้องใช้มากขึ้นเรื่อย ๆ ) สิ่งนี้มีค่าใช้จ่ายสูงและไม่มีประสิทธิภาพในการใช้พลังงานปัจจุบันมีค่าใช้จ่าย 1.2 พันล้านเหรียญสหรัฐ / ปีเพื่อรักษาแบบจำลอง PoW.

ใน PoS “ผู้ตรวจสอบความถูกต้อง” จะแทนที่คนงานเหมืองและพวกเขา “ตรวจสอบความถูกต้อง” (แทนที่จะเป็นของฉัน) บล็อกเข้าสู่บล็อกเชน แทนที่จะใช้พลังงานไปกับบล็อกใดบล็อกหนึ่งผู้ตรวจสอบความถูกต้องจะเดิมพันเงินของพวกเขาในบล็อกหนึ่ง ๆ บล็อกที่มีเงินเดิมพันมากที่สุดได้รับการตรวจสอบและเพิ่มเข้าไปในบล็อกเชน โดยพื้นฐานแล้วผู้ตรวจสอบความถูกต้องจะ “เดิมพัน” ว่าบล็อกบางบล็อกจะถูกเพิ่มลงในห่วงโซ่โดยการล็อคเงินของพวกเขาในสัญญาจนกว่าจะมีการเพิ่มบล็อกถัดไป พวกเขาจะได้รับรางวัลหากวางเดิมพันในบล็อกที่ถูกต้อง พวกเขาจะสูญเสียเงินทุนหากพวกเขากระทำการที่มุ่งร้ายโดยพยายามตรวจสอบความถูกต้องของบล็อกที่มีข้อมูลที่ไม่ถูกต้องหรือเสียหาย.

ตามแนวคิดแล้วการเปลี่ยนแปลงนี้ควรปกป้อง blockchain จากการโจมตีที่เป็นอันตราย ด้วย PoW การโจมตีบล็อคเชนที่ล้มเหลวทำให้ผู้โจมตีเสียเวลาและกำลัง ด้วย PoS การโจมตีที่ล้มเหลวบน blockchain ทำให้ผู้ใช้เสียเงินโดยตรงเนื่องจากเขา / เขาสูญเสียเงินทั้งหมดที่เดิมพันในบล็อกที่ไม่ถูกต้องในทันที.

การเปิดตัวครั้งสุดท้ายของ Casper จะนำหน้าด้วยการทำซ้ำสองโปรโตคอล: Casper FFG และ Casper CBC การทำซ้ำเหล่านี้จะถูกปรับใช้บน Ethereum เพื่อทดสอบ PoS บนเครือข่ายและระบุปัญหาที่อาจเกิดขึ้นก่อนที่จะเปลี่ยนไปอย่างสมบูรณ์.

แคสเปอร์ FFG

Casper FFG (Friendly Finality Gadget) จะเป็นการทำซ้ำครั้งแรกของ Casper ซึ่งมีแนวโน้มว่าจะเปิดตัวในช่วง Hard Fork ถัดไปของ Ethereum ที่ Constantinople ใน Casper FFG บล็อกยังคงถูกขุดด้วย PoW อย่างไรก็ตามทุกๆห้าสิบบล็อกผู้ตรวจสอบความถูกต้องจะเข้ามาทดสอบกลไก PoS “จุดตรวจ” นี้ใช้โปรโตคอล PoS ในการประเมินและยืนยันการสิ้นสุด Finality หมายความว่าการดำเนินการเสร็จสมบูรณ์และไม่เปลี่ยนรูปโดยสิ้นเชิง ใน FFG ผู้ตรวจสอบความถูกต้องจะทุ่มทุนเพื่อสรุปห้าสิบบล็อกก่อนหน้านี้ในห่วงโซ่.

แคสเปอร์ CBC

Casper CBC (Correct-by-Construction) จะเป็นการทำซ้ำครั้งที่สองของ Casper โดยปกติโปรโตคอลจะถูกระบุอย่างเป็นทางการและพิสูจน์แล้วว่าเป็นไปตามคุณสมบัติที่กำหนดทั้งหมด ด้วย CBC โปรโตคอล PoS จะถูกระบุเพียงบางส่วนจากนั้นปรับแต่งเพิ่มเติมเพื่อให้เป็นไปตามคุณสมบัติตามที่ตั้งใจไว้ โดยพื้นฐานแล้วแทนที่จะกำหนดไว้อย่างสมบูรณ์ตั้งแต่ต้นโปรโตคอลจะได้รับมาอย่างต่อเนื่องและต่อเนื่อง สิ่งนี้ทำได้โดยการใช้การพิสูจน์ที่เรียกว่า “ปฏิปักษ์ในอุดมคติ” ซึ่งสามารถยกข้อยกเว้นข้อบกพร่องและความล้มเหลวในอนาคตของโปรโตคอล.

โพรโทคอล Casper ขั้นสุดท้ายจะถูกนำไปใช้กับการเรียนรู้จากทั้ง FFG และ CBC โปรโตคอลมีขอบเขตที่กว้างกว่าความสามารถในการปรับขนาดได้มากรวมถึงการปรับปรุงด้านพลังงานและความปลอดภัยด้วย อย่างไรก็ตามพลังงานน้อยลงต่อโหนดที่ต้องเพิ่มบล็อกในห่วงโซ่หมายความว่าเครือข่ายจะปรับปรุงความยากลำบากในการปรับขนาดได้ในปัจจุบัน แม้ว่า Casper จะไม่ได้รับการพัฒนาโดยเฉพาะเพื่อจัดการกับข้อกังวลเรื่องการปรับขนาด แต่ก็จะส่งผลดีอย่างแน่นอนต่อความสามารถของเครือข่ายในการรองรับปริมาณการใช้งานที่สูงขึ้น.

มองไปตามถนน

ข้อเสนอทั้งสี่ข้อข้างต้นไม่สามารถใช้ร่วมกันได้และมีแนวโน้มว่าทั้งหมดจะถูกนำไปใช้ในระดับหนึ่งเพื่อช่วยให้เครือข่าย Ethereum มีขนาดใหญ่ขึ้นเมื่อเวลาผ่านไป การปรับขนาดจะเป็นสิ่งสำคัญอันดับต้น ๆ สำหรับนักพัฒนา Ethereum ในปี 2018 เนื่องจากมีการพัฒนาและเปิดตัว dapps ที่ได้รับความนิยมมากขึ้นเรื่อย ๆ เราจะเห็นการปรับแต่งตัวเลือกการปรับขนาดที่มีให้อย่างต่อเนื่องเพื่อให้ Ethereum มีศักยภาพเต็ม.

จดหมายข่าวสมัครรับจดหมายข่าวของเราเพื่อรับข่าวสารล่าสุดของ Ethereum โซลูชันระดับองค์กรทรัพยากรสำหรับนักพัฒนาและอื่น ๆ ที่อยู่อีเมลเนื้อหาพิเศษรายงาน DeFi ประจำไตรมาสที่ 3 ปี 2020 ของ Ethereumรายงาน

รายงาน DeFi ประจำไตรมาสที่ 3 ปี 2020 ของ Ethereum

รายงาน DeFi ประจำไตรมาส 2 ปี 2020 ของ Ethereumรายงาน

รายงาน DeFi ประจำไตรมาส 2 ปี 2020 ของ Ethereum

คู่มือฉบับสมบูรณ์สำหรับเครือข่ายธุรกิจ Blockchainคู่มือ

คู่มือฉบับสมบูรณ์สำหรับเครือข่ายธุรกิจ Blockchain

วิธีสร้างผลิตภัณฑ์ Blockchain ที่ประสบความสำเร็จการสัมมนาผ่านเว็บ

วิธีสร้างผลิตภัณฑ์ Blockchain ที่ประสบความสำเร็จ

รู้เบื้องต้นเกี่ยวกับ Tokenizationการสัมมนาผ่านเว็บ

รู้เบื้องต้นเกี่ยวกับ Tokenization

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me