区块链与啥专业相关?
谢邀 区块链是利用网络特性去中心化地解决某些问题,因此它必然涉及到一些计算机网络、密码学方面的知识;同时,由于它要解决的是价值传递的问题,因此还需要了解货币金融等方面的常识。当然,最重要的是,你要对区块链的本质有深入的理解(这点我会在后面的问答中阐述),并以此为基础对以上各方面进行取舍,决定你需要学习什么和忽略什么。
1. 区块链本质是什么? 很多人提到区块链就会说,它是一种分布式账本技术。确实,从技术的层面来看,区块链是一种分布式账本;但从现实的层面来看,它是要构建在分布式的算力基础之上才能发挥作用的一种技术。因为任何分布式系统都面临着一个核心问题——共识。没有共识,就谈不上分布式计算,更不要谈区块链了。所以,我认为,区块链本质上是种具有特殊功能的分布式共识机制。
2. 你需要学什么? 想要掌握区块链,你不仅要精通计算机网络、密码学等方面的知识,你还应该对这些知识怎样应用有个清晰的认识。比如,你不仅要知道以太网帧的结构,你还应该知道它在比特币协议中的变化;你不仅仅要熟知哈希函数、数字签名等基本概念,你还要理解它们是如何应用于构建区块链的。
另外,虽然很多文章都说区块链主要涉及加密算法与码学领域,但是我并不认为这些就是区块链的全部。我个人觉得,区块链其实是一个融合多种学科的新兴交叉领域。因而,你在构建自己的知识体系的时候,千万不要被上述那些已经成熟的专业所局限。说不定,某个冷门专业的知识和思想就在影响着这个领域的发展呢! 所以,我的建议是,你可以把以下这些作为自己学习的基础: 计算机网络、数据结构、操作系统、算法、密码学、数字签名的相关知识(注意不是简单的了解,而是能实现代码和概念的闭环)。
你应该对这些知识如何应用有个大概的了解。可以的话,你自己尝试着用这些知识来搭建一个类似区块链的系统。如果可能的话,你的系统能够支持一定量的用户访问并且具备一定的吞吐量就好了。 另外,如果你有兴趣可以研究一下这些方面: 区块链的安全、区块链的监管、基于区块链的信用体系、链下的支付处理(除了PayPal,还有Epay之类的)、区块链在其他领域的应用(金融创新、物联网、共享经济等等)……