DAY 30- NFT & 结语

最後一篇,想说讲一下最近很夯的NFT,做为一个结尾。

NFT

Non-Fungible Token,非同质化代币。
我们先来看一下这个「同质化」是什麽意思。
我们现在手里拿的货币就是一种同质化的物品,你手里拿的100块和我手里拿的100块都是同质的,拥有同样的价值。
所以如果我用100块跟你换100块,基本上是没差的,因为就算过了100年,这两张纸的价值都会是相同的。

而NFT的「非同质化」就暗示着他是独一无二的,
我们身边的东西几乎都是非同质化的,因为他们都稍微有些不同,因此每个东西都有其价值,你可以因为他的不同而订不同的价钱。
讲比较典型的例子就是画、雕像、艺术品。
蒙娜丽莎的微笑、亚维侬的少女、大卫像,他们都是非同质化的,世界上就只有一份真品。
因为这样的稀缺性,所以他可以订很高的价钱。
有了价钱,就会有买卖,有了买卖自然就会有拥有者。

NFT就是数位版的这些东西。

我们如何真正拥有一个东西?

这个问题有点哲学哈哈哈,不过我们确实要探讨如何拥有一个东西。
实体物品,我们最基本大概就只要拿着他就可以说这东西是我的,再更严谨一点,
一个买卖契约。
你可能需要有一张纸、法律文件,来证明这个东西确实为你所拥有。
换个方向来思考,当大部分的人都相信那张纸上面的内容的时候,这个东西才真正是你的。

所以我们要怎麽让大家知道一个数位资产是你的,
你拥有一张图片、你拥有一段音乐、你拥有一篇贴文、一个画面、一个游戏角色?
如果这件事情写在区块链上呢?

区块链上面就写着某某某,拥有这张照片,那麽谁也不能反驳吧。

NFT 就是这样运作的,卖家把这个档案的一小部分(或是网址)放在网路上卖,
如果卖掉就把他写再区块链交易资讯中,说明这个数位资产确实就是属於买家。
而至於怎麽卖就要牵扯到乙太坊上的一个功能:智能合约。

智能合约

智能合约是乙太坊衍伸出的功能,其实就是把一串程序码丢到区块链上。
藉由智能合约,可以做到「如果 某件事发生 就 怎麽样」这件事,
也就造成你可以在合约上写说,如果这个人给我20ETH,我就把资产转到他的地址底下。
因此智能合约实现了NFT的买卖。

当然智能合约是可以自己写的,不过通常如果你没有程序语言的能力的话,
许多平台都已经将这些程序码写好作为平台的服务了,你只需要提供想卖的东西给他们就好了。
另外一件事情是,NFT的创作者通常在作品在二级市场上被转卖时可以获得一定比例的报酬,
这部分称为权利金制度。

如果你有兴趣的话可以上Opensea 上看有甚麽东西可以买,或是看看这篇文章会告诉你哪里有卖。
那如果你更有兴趣的话,请拉到此页最底下,我们有个团队成员专门在讲NFT。

回顾

铁人30天也告一个阶段了,我想还是必须回顾一下的吧!
从最一开始简介密码学在干嘛,然後区分了编码(utf-8、base64)和加密的差别

教室就是一个广大的网路空间,讯息从你手里传到目标手里会经过很多问题。首先,为了防止他人偷窥,我们得为讯息加密,这是最重要的事情。接着,为了防止骇客窜改你所传的讯息,收件者需要做讯息监别的动作,好确认这封确实是你写得而且没有被窜改过。最後,既然你希望收到讯息的人读得懂这篇讯息,那密钥的传递或协议就很重要了。

我们基本介绍了讯息的加密方式,分为对称式密码学、公钥密码学。
而对称式密码里面分成串流密码(OTP、RC4)和区块密码(AES、DES)作介绍。
公钥密码学我们介绍了RSA、ECC以及密钥的传递方式DHKE、ECDH以及协议ElGamel。

而後为了要介绍如何做讯息监别的动作,於是我们先介绍了如何将一大串文字变成短一点,
也就是HASH,接着便是数位签章DSA、ECDSA,以及讯息监别码MAC。

再来是网站的应用方面,我们介绍了CA,介绍凭证为甚麽被需要、凭证要在哪里看。
以及网站的加密协定HTTPS、SSL、TLS。

最後一个部分即是公钥密码学、HASH的终极应用:区块链。
我们知道区块链的功能以及其背後的密码学原理,藉由前20几天的密码学基础知识,
可以对区块链有最完整的认识。
而最後,区块链中使用到密码学的地址。
由BIP 39 的助记词生成出 BIP32 分层确定式钱包的种子,再由一个种子生成出无限多的公私钥密码对、生成出相对应的地址。
最後用BIP44规范出地址在HD wallet 里面该属於哪一层。
以及此篇上面所提到的区块链应用NFT。

结语

我常觉得自己花蛮多时间在这上面的,一篇平均花个3-5个小时都有可能,可是写出来的东西好像都蛮少的,我也不知道是怎麽回事。

在公开的地方发文是一种蛮好的学习方式,既然是公开的,就要给一个交代,
所以正确性当然不能比自己学习来的低,所以在正确性方面也花我蛮多时间的。
另一方面,既然是一篇「文章」,整个文章的架构就很重要,要先说这个,还是先说那个,
什麽可以讲什麽不能讲,都要做取舍。
我觉得可能我自己才会是学到最多东西的人,因为蒐集资料的过程有好多东西被我看完之後舍弃掉,
所以这部分就很可惜的没有写在文章里头。
所以好像留了不少坑没有补,这部分I am so sorry。

有一件事情我一直很困扰,就是电脑的选字有时候真的笨的我很头痛。
尤其有些词就是要一直打到,
公「要」、私「要」、区块「链」,
你在这三十天里面看到的所有「公钥、私钥、区块链」都是我手动选字的。
这可能也花了我不少时间(开玩笑的)。

DAY25-DAY29 大概是我最满意的部分,这几篇文章几乎都是从零开始学起,
所以写的比较详细,甚至还自己拿PPT来作图。
效果还蛮好的,除了自己可以学得很详细之外、印象野蛮深刻的。
而区块链的知识本来就是我学密码学的初衷,所以我觉得最後引回来讲这方面还不错。

最後要感谢大家有耐心地读到这里,或许我的文章对你有帮助,那对我来说会是很棒的事情;
如果没有也没关系,至少你是因为看到标题有兴趣才点进来的吧。

以後还是会继续以写文章的方式学习,或许可以写一个Fintech的系列也不一定(没有任何保证的)。

那麽,
掰掰!


再次推荐团队其他人的文章
【团队成员】

Name 标题 Tags
ALu NFT 网站与 MetaMask 连动的 Owners 登入系统 BlockChain,Modern Web
Cooksuhr 1995到2021,php到react网站开发历程 Modern Web
ExcitedMail 杰哥的考研纪录 Computer Science
foodchain 三十天内用C++写出一个小游戏 Software Development
momojn C++ 三十天学习纪录 Software Development
yywoli 从资料库到资料分析视觉化 Data Analysis

https://ithelp.ithome.com.tw/upload/images/20211010/20140112jNXGX1Ruzo.jpg


<<:  Day 30. 铁人赛最後一天 – 完赛心得感想⁽⁽◟(∗ ˊωˋ ∗)◞ ⁾⁾

>>:  Day-28 TimePickerDialog

Day 8:架设 Prometheus (0)

昨天简单介绍过 Prometheus 了,那麽今天我们就自己架一个来玩看看吧。尝试任何一个新工具的第...

网路架构检视 - 连线存取、防火墙

网路基础架构做完上一篇的分区与 IP 分配後,下一步就要开始针对每一个区域的性质调整各项防护措施,以...

【Day 26】渲染备忘:Memo

React.memo React.memo 主要的作用是性能优化, 使用 memo 後,程序会将 r...

C#入门之类(补充)

前面我们有讲过 C# 中的类,今天我们补充点,关于类的继承的内容。 在实际的环境中,我们的对象都是不...

介面隔离原则 Interface Segregation Principles

最後,我们来到了 SOLID 当中的介面隔离原则。这里我们先举先前提到过的 BaseballPlay...