Browse Source

in progress

0x4a52466c696e74 2 years ago
parent
commit
9834ee7a98
1 changed files with 17 additions and 11 deletions
  1. 17 11
      elgamal/curve.go

+ 17 - 11
elgamal/curve.go

@@ -3,7 +3,6 @@ package elgamal
 import (
 	"context"
 	"fmt"
-	"log"
 	"math/big"
 
 	"git.ali33.ru/fcg-xvii/curve/v2/tools"
@@ -33,17 +32,24 @@ func (s *Curve) bytePoint(p *tools.Point) (byte, error) {
 // Заполнение таблицы байт -> точка на кривой
 func (s *Curve) setupDataTable(ctx context.Context) error {
 	s.dTable = make(map[byte]*tools.Point)
-	dx := big.NewInt(1)
-	for i := byte(0); i <= 254; i++ {
-		// поиск точки
-		p, _, err := s.SearchClosePoints(dx, ctx)
-		if err != nil {
-			return err
+	/*
+		dx := big.NewInt(1)
+		for i := byte(0); i <= 254; i++ {
+			// поиск точки
+			p, _, err := s.SearchClosePoints(dx, ctx)
+			if err != nil {
+				return err
+			}
+			// check already exists - todo
+			dx = tools.Add64(p.X(), 2)
+			s.dTable[i] = p
+			log.Println(i, p)
 		}
-		// check already exists - todo
-		dx = tools.Add64(p.X(), 2)
-		s.dTable[i] = p
-		log.Println(i, p)
+	*/
+	g := s.G()
+	for i := int64(0); i <= 254; i++ {
+		p, _ := g.Mul(big.NewInt(i + 1))
+		s.dTable[byte(i)] = p
 	}
 	return nil
 }