[PYTHON] [No code] I wrote about elliptic curves and blockchain in my thesis, so I tried to summarize the study method.

What is this article

As the title suggests, I wrote about the elliptic curve cryptography used for Bitcoin and blockchain in my graduation thesis. We will introduce the literature separately for elliptic curves and blockchains. The target audience is those who are interested in blockchain but have never studied. Also, since the literature introduced is only a small part, I hope that you will see it as one of the options when studying: relieved: By the way, I'm only posting the ones that I used as an affiliate, not as an affiliate, so if you have any other recommended documents, please point them out!

Who

This is the first post. I'm doing math at university with a deviation of about 50, but I don't understand math at all. However, I wrote it because I majored in cryptography. I'm an engineer. If you would like to see my poor graduation thesis, please see About Me at the URL below. We would be grateful if you could give us your feedback.

Click here → https://ishihaya.com/

List of references

Blockchain Bitcoin (basic knowledge)

[Economy] The ultimate weapon of the 5G era, "blockchain"

~ Part 1 ~ A great invention that will change the future of humankind! https://www.youtube.com/watch?v=HfIqAQUPrjA ~ Part 2 ~ Revolutionary technology to defeat GAFA https://www.youtube.com/watch?v=H2jP94Fpoi0

I will introduce YouTube from the beginning, but it is a video of that famous Mr. Atsuhiko Nakata. The reason I brought it first is because it's interesting and super easy to understand. that's all.

Bitcoin and blockchain

https://www.amazon.co.jp/dp/B072JJL66R/ref=cm_sw_em_r_mt_dp_U_zfBbEbH3TCN62 Author: Andreas M. Antonoplos Translation: Takaya Imai, Junichiro Hatogai It is called a masterpiece. I think you can read it for the time being. The code will come out from the middle.

Blockchain programming

https://www.amazon.co.jp/dp/4061538314/ref=cm_sw_em_r_mt_dp_U_RJBbEbYBJMFJ1 Authors: Shigeichiro Yamazaki, Shigeru Azuchi, Shuntaro Tanaka You can experience the implementation of blockchain etc. in Ruby language. It was a good book to read as the second book.

For those who don't know anything about blockchain

https://qiita.com/hirotoyoshidome/items/0d7e18f81b4076416735 This is an article by Qiita. It is as the title. It's also a good idea to go through the Advent Calendar articles.

Blockchain Bitcoin (Practice)

The following Qiita article was helpful to actually move and learn how blockchain works.

Learn by making a blockchain ~ The fastest way to learn how a blockchain works is to try it ~

https://qiita.com/hidehiro98/items/841ece65d896aeaa8a2a For the time being, it may be the quickest to see this article and implement it.

Making a blockchain with Go Part1: Basic type

https://qiita.com/seitauc/items/553d315b84b0e7bfc4d0 I will also give an implementation example in Golang.

Elliptic curve cryptography

The following is a recommended document for those who want to know the mathematical contents. Before the elliptic curves, there is a book that has become interesting in cryptography, so let me introduce only one book first.

Introduction to modern cryptography-How can secrets be kept?

https://www.amazon.co.jp/dp/4065020352/ref=cm_sw_em_r_mt_dp_U_BqDbEb72T2TC0 Author: Masahiro Kaminaga Easy to read. I think you can read it normally even if you are not majoring in mathematics. And it's interesting. From the history of cryptography such as Caesar cipher, there was also a concrete story of public key cryptography (RSA, elliptic curve).

For those who want to know more deeply, the following books are recommended.

All about cryptography Cryptography and Elliptic Curve

The first book is an easy-to-read book. I think it is at a level that can be understood in high school mathematics. I personally found the second book a little difficult, but since the various forms of elliptic curves are well written, I highly recommend it to anyone who likes to read math books.

This concludes the introduction of the literature. In the next article, I would like to go into the mathematical content of elliptic curves.

Thank you for reading.

Recommended Posts

[No code] I wrote about elliptic curves and blockchain in my thesis, so I tried to summarize the study method.
I tried to summarize the code often used in Pandas
I tried to illustrate the time and time in C language
I tried to summarize the commands often used in business
[Qiita API] [Statistics • Machine learning] I tried to summarize and analyze the articles posted so far.
I wrote the code to write the code of Brainf * ck in python
I tried to find out the difference between A + = B and A = A + B in Python, so make a note
I tried to summarize the frequently used implementation method of pytest-mock
[Python] I tried to summarize the set type (set) in an easy-to-understand manner.
I tried to summarize until I quit the bank and became an engineer
I tried to summarize the logical way of thinking about object orientation.
I implemented the VGG16 model in Keras and tried to identify CIFAR10
I tried to summarize the umask command
I tried to summarize the graphical modeling.
The tree.plot_tree of scikit-learn was very easy and convenient, so I tried to summarize how to use it easily.
Somehow the code I wrote worked and I was impressed, so I will post it
I didn't understand the Resize of TensorFlow so I tried to summarize it visually.
LeetCode I tried to summarize the simple ones
I tried to visualize the lyrics of GReeeen, which I used to listen to crazy in my youth but no longer listen to it.
[Linux] I learned LPIC lv1 in 10 days and tried to understand the mechanism of Linux.
I tried to summarize the new coronavirus infected people in Ichikawa City, Chiba Prefecture
[Python] I tried to summarize the array, dictionary generation method, loop method, list comprehension notation
I tried to graph the packages installed in Python
I tried to summarize how to use pandas in python
I tried to simulate the dollar cost averaging method
I tried to summarize the string operations of Python
I tried to summarize what python strong people are doing in the competition professional neighborhood
[Qualification] I passed LinuC Level 1, so I will write about how to study and how it was.
I also tried to imitate the function monad and State monad with a generator in Python
I wrote a doctest in "I tried to simulate the probability of a bingo game with Python"
I tried to find out the outline about Big Gorilla
[First COTOHA API] I tried to summarize the old story
I tried "How to get a method decorated in Python"
I tried programming the chi-square test in Python and Java.
I tried to display the time and today's weather w
I wrote it in Go to understand the SOLID principle
I tried to implement the mail sending function in Python
[Machine learning] I tried to summarize the theory of Adaboost
I tried to enumerate the differences between java and python
I want to map the EDINET code and securities number
I tried to summarize how to use the EPEL repository again
I made my own 3-layer forward propagation neural network and tried to understand the calculation deeply.
[Slack api + Python] I tried to summarize the methods such as status confirmation and message sending
I tried to summarize the contents of each package saved by Python pip in one line
[RHEL7 / CentOS7] I put in the log monitoring tool swatch and tried to notify by email
I don't really understand the difference between modules, packages and libraries, so I tried to organize them.
I tried fitting the exponential function and logistics function to the number of COVID-19 positive patients in Tokyo
[Kenchon book to Python] "Train your problem-solving skills! Algorithms and data structures" I tried to rewrite the posted code in Python! -table of contents-