TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Elliptic Curve Cryptography Explained (2019)

298 pointsby ptralmost 4 years ago

13 comments

dragontameralmost 4 years ago
I don&#x27;t know ECC at all. But a note:<p>Finite fields are of two types: &quot;Prime Fields&quot; (such as the mod 19 field discussed in this blogpost), and &quot;Extension Fields&quot; (which would be prime^n, such as 19^2 or 361. Or more commonly, the 2^x fields, such as 2, 4, 8, 16, 32, 64... 256... 65536 ... because the 2^x fields correspond very closely with binary numbers).<p>Prime fields can be taught very quickly: maybe 30 minutes of study and examples is all you really need to really get what is going on. Be it a 2, 5, or 19 field, its really cool and simple.<p>The &quot;leap&quot; from prime fields into extension fields takes a few hours of dedicated study (which probably will be done over a week to a month if you&#x27;re a busy adult like me) if you plan to do it rigorously. A lot of blogposts, textbooks, and other reference material will handwave the extension field because its... really hard math.<p>My best advice is &quot;believe in the textbooks&quot;, extension fields are possible. And this is one of those situations where you can just &quot;believe in the math&quot; and learn the details of extension fields AFTER you understand the applications of them. &quot;Extension Fields are like prime fields but way more tricky&quot;. They behave like a prime field in almost every way that&#x27;s important, but its just way harder to understand.<p>--------<p>I do recommend making the leap at some point, and truly understanding the extension fields. Once you get there, you finally understand the underlying math behind CRC32, AES, GCM mode, and ECC. Its a very worthwhile endeavor, but you really need to dedicate yourself to quiet study for some time to really get the concepts.
评论 #27317713 未加载
评论 #27319786 未加载
评论 #27317546 未加载
jedbergalmost 4 years ago
I was hanging out with a friend of mine from high school, who is now a tenured math professor in Colorado, about a decade ago. This was just as ECC was getting popular among security people but hadn&#x27;t really entered nerd mainstream yet.<p>He mentioned that he was working on elliptic curves, so I asked him how his work applies to ECC, and he asked me, &quot;what&#x27;s ECC?&quot;.<p>He had no idea his work was being used for security research. He just liked studying the properties of elliptic curves. After we chatted he did en up learning about how elliptic curves are used in cryptography.
评论 #27320054 未加载
评论 #27326884 未加载
SavantIdiotalmost 4 years ago
If you want to see a real implemention of arbitrary sized integer math, mbedTLS is a great example:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;ARMmbed&#x2F;mbedtls&#x2F;blob&#x2F;development&#x2F;library&#x2F;bignum.c" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ARMmbed&#x2F;mbedtls&#x2F;blob&#x2F;development&#x2F;library&#x2F;...</a><p>All of the ECC code in that library relies on this code, which can be accelerated by dedicated hardware.<p>Here is multi-precision multiplication:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;ARMmbed&#x2F;mbedtls&#x2F;blob&#x2F;f1eb4257823ae4c3b3ac4a0b0ae1876df4e8b643&#x2F;library&#x2F;bignum.c#L1652-L1688" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ARMmbed&#x2F;mbedtls&#x2F;blob&#x2F;f1eb4257823ae4c3b3ac...</a>
loup-vaillantalmost 4 years ago
For those interested in &quot;Warp Speed&quot;, I&#x27;ve written a tutorial about how to exploit group laws to implement fast scalar multiplication: <a href="https:&#x2F;&#x2F;loup-vaillant.fr&#x2F;tutorials&#x2F;fast-scalarmult" rel="nofollow">https:&#x2F;&#x2F;loup-vaillant.fr&#x2F;tutorials&#x2F;fast-scalarmult</a><p>As a bonus, there are remarks about secure implementations as well.
评论 #27317746 未加载
hatsunearualmost 4 years ago
I used this explanation back in the day when I had to explain it to moderately-technically proficient people:<p>Diffie-Hellman and a lot of the asymmetric crypto ecosystem can be done on &#x2F;any&#x2F; multiplicative cyclic groups (special sets associated by an operation that have certain properties, namely commutativity)<p>obviously not all cyclic groups are equal, some <i>happen</i> to have one-way-ness backed by some fundamental cryptographic conjecture that it is hard to solve but easy to prove.<p>the OG diffie-hellman used prime number modulo cyclic groups, but you can do that in any other cyclic group provided that it is secure.<p>turns out when you make a cyclic group using ECC very carefully and using a crazy roundabout procedure (shown in the article), it has cryptographic security.
alpbalmost 4 years ago
I can also offer this video as an explanation (personally how I understood it). <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=NF1pwjL9-DE" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=NF1pwjL9-DE</a>
dborehamalmost 4 years ago
I was happy to see ECC become popular because finally a bunch of Mathematics I learned in college became useful.
评论 #27317262 未加载
RcouF1uZ4gsCalmost 4 years ago
&gt; Pick two different random points with different x value on the curve, connect these two points with a straight line, let’s say A A and B B . Then you will notice the line touches the curve at a third point.<p>I seem to always get hung up on this part of the explanation. Looking at the graph, I can see points along the curve, where a line would only intersect with 2 points on the curve.<p>What do you do in that case? Is this a matter of, yes those points are there, but they are rare enough that we just pick another set of random points and try again, or is there another solution to the issue?
评论 #27316898 未加载
评论 #27317649 未加载
评论 #27316901 未加载
评论 #27316865 未加载
评论 #27316900 未加载
评论 #27317711 未加载
ac42almost 4 years ago
&gt; Yes, a point adding itself holds the same rule, using the tangent line on the finite field to connect the third<p>How in discrete metric space do you create a tangent line on a set of points in a finite field?
评论 #27324158 未加载
kuharichalmost 4 years ago
Past comments: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21182982" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21182982</a>
imiricalmost 4 years ago
Looks like a good reference, thanks for sharing.<p>Another explanation I enjoyed from 2013, but have since mostly forgotten: <a href="https:&#x2F;&#x2F;arstechnica.com&#x2F;information-technology&#x2F;2013&#x2F;10&#x2F;a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography&#x2F;" rel="nofollow">https:&#x2F;&#x2F;arstechnica.com&#x2F;information-technology&#x2F;2013&#x2F;10&#x2F;a-rel...</a>
zoltane0almost 4 years ago
Here&#x27;s another great resource on the topic: <a href="https:&#x2F;&#x2F;andrea.corbellini.name&#x2F;2015&#x2F;05&#x2F;17&#x2F;elliptic-curve-cryptography-a-gentle-introduction&#x2F;" rel="nofollow">https:&#x2F;&#x2F;andrea.corbellini.name&#x2F;2015&#x2F;05&#x2F;17&#x2F;elliptic-curve-cry...</a>
ramshankeralmost 4 years ago
Someone knowledge, does elliptic curve math and factoring math linked in any way to each other? Does solving one automatically solve the other also? I am asking because these are the only two approach securing the website transit right now.
评论 #27322381 未加载
评论 #27318237 未加载