or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Yolo cat 文章 濃縮
區塊鏈核心始終不變,從以前的Fomo3D到如今的NFT。不管是去年2021年的Adidas mint超長時間,又或者周杰倫 nft闢謠,到如今的yolo cat / murmur cat,echox白名單階段透過合約把NFT買完,公售沒東西可賣。
今天就帶大家從三個方向,聊聊跨入NFT市場的陳零九YOLO Cat事件。
YOLO Cat事發經過
2022.1.9 當天藝人陳零九本來預計將在下午1330公開發售的,「 YOLO Cat Club」的系列 NFT,卻在1329分時全數鑄造完,幣圈社群頓時炸鍋。
對此陳零九及其技術合作方團隊 FOMO Dog Club 有在當天晚上的八點鐘,一同在 IG 直播說明整個事件的始末,以及主要的補償措施
https://www.instagram.com/tv/CYgnUQVBV2c/?utm_source=ig_web_copy_link
首先,關於為什麼在發售時間前就可以進行買賣,項目工程師的說明:
此事件發酵後區塊鏈科學家社群 AlphaShark 的創辦人也有在,Medium 上發文解釋這次事件的原因 https://medium.com/@b1995/yolo-cat-復盤-1-956565334642
我們可能沒有去搶,又或者沒有搶到熱門的NFT,但不管我們的選擇是什麼,我們可以從中學習到什麼呢?
合約即條文,鏈上公開資訊會告訴我們答案
向Vitalik Buterin致敬
我們所有的疑惑都可以從合約去挖掘出答案
就讓我們帶大家透過合約的基礎來解答!
下面我們會分享如何找到NFT的合約,包含合約上架時間,觀看鑄造的機制。
有關機器人搶NFT的原理則不深入探討,簡單來說主要機器人所做的事情分為兩個,分別是暴力查詢提前找到合約以及產生多個智能合約代替人頭,突破每人鑄造數量的限制。
如何找到合約?
首先我們要先到 opensea 上找到 Yolo Cat 的項目
https://opensea.io/collection/yolo-cat-club09
如何知道合約上架時間?
到 Contract Creator: 中 txn 的網址,會有此筆交易的詳細內容
可以看到 timestamp 是 `Jan-09-2022 04:37:34 AM +UTC)``
從這邊可以得知這個合約是在公開發售約一個小時前上架的,
而這裡的確會有人可以事先取得合約地址進行偷跑的動作,
不過這份合約當中其實有做一個狀態判斷,而從公開發售時間點的 block
13969455
中,我們可以清楚地看到。在 Etherscan 上 搜尋
13969455
,可以看到這個 block 的詳細資訊,可以找到這筆交易 filp Sale Active (這邊應該是拼錯flip)。點擊 129 transcations https://etherscan.io/txs?block=13969455&ps=100&p=1
從這裡我們可以發現,這個動作的意思才是真正開賣,只要在這個動作前的鑄造行為都會失敗,可以從合約的 transactions 觀察
直接看倒數第二頁的交易記錄,可以看到在 filp Sale Active 前都是 fail 的

從這些數據來看如果想只是單純地偷跑,在13:58其實是會失敗的
此NFT事件 從技術面去看兩大方面
首先 1 我們可以看 filp Sale Active 完的第一筆交易,他的 id 是 10,而下一筆是11,從這個規律推斷他前面還有九隻,剛好跟白名單的數量相符。

接下來是第二點,也是此事件發生的重點
從合約中我們可以以找到鑄造方法,詳細去合約看發現在
auctionMintYoloCat
確實是有寫到時間的判斷把這兩段做比對,可以看到
auctionMintYoloCat
有判斷執行的時間一定要超過auctionStartTime
,否則就會拒絕執行第一個方法,的確有判斷狀態,如果有人偷跑是會挖失敗


但類似的方法
mintYoloCats
卻少了這個判斷所以才有出塊時間不一致的問題。這裡的寫法的確需要好好檢視
同時也證明上線前的測試還有程式碼 review 非常重要!!!
因為很重要,所以貼三次
require(block.timestamp >= auctionStartTime, 'Auction not start');
require(block.timestamp >= auctionStartTime, 'Auction not start');
require(block.timestamp >= auctionStartTime, 'Auction not start');
一個可以走長遠的好項目,需同時具備社群與技術能力
此事件中項目方該值得深思的地方『公平』
在整起YOLO Cat凸顯了一件事,那就是對於一般人來說,創造了一個高門檻的標準,單純喜歡想要支持此項目的人如果不會程式,搶不到那就只能到opensea去購買,換句話就是取得門檻就變高了。
這就像是知名歌手的演唱會門票,假設今天公告在12:00開賣,但是11:59就搶購一空,有人先用程式搶完了,那麼不會程式,但是想聽演唱會的人只能透過黃牛去買。
針對此一事件被影響者的共勉
身處在區塊鏈圈這個去中心化的世界,多懂一點,就是一種保護自己的方式。
獨立思考,鑒別爆炸的資訊量,哪些對自己有益,哪些對自己有害,永遠是不會錯的
不隨之起舞,不一頭熱,因為永遠都有下一個賺錢的機會
我們能做的,就是在那個時間點到來時,把自己準備好