MCPcopy Create free account
hub / github.com/DOSNetwork/core / Add

Method Add

group/edwards25519/ge.go:180–194  ·  view source on GitHub ↗
(p *extendedGroupElement, q *cachedGroupElement)

Source from the content-addressed store, hash-verified

178}
179
180func (c *completedGroupElement) Add(p *extendedGroupElement, q *cachedGroupElement) {
181 var t0 fieldElement
182
183 feAdd(&c.X, &p.Y, &p.X)
184 feSub(&c.Y, &p.Y, &p.X)
185 feMul(&c.Z, &c.X, &q.yPlusX)
186 feMul(&c.Y, &c.Y, &q.yMinusX)
187 feMul(&c.T, &q.T2d, &p.T)
188 feMul(&c.X, &p.Z, &q.Z)
189 feAdd(&t0, &c.X, &c.X)
190 feSub(&c.X, &c.Z, &c.Y)
191 feAdd(&c.Y, &c.Z, &c.Y)
192 feAdd(&c.Z, &t0, &c.T)
193 feSub(&c.T, &t0, &c.T)
194}
195
196func (c *completedGroupElement) Sub(p *extendedGroupElement, q *cachedGroupElement) {
197 var t0 fieldElement

Callers 3

geScalarMultVartimeFunction · 0.95
AddMethod · 0.95
geScalarMultFunction · 0.95

Calls 3

feAddFunction · 0.85
feSubFunction · 0.85
feMulFunction · 0.85

Tested by

no test coverage detected