main.rs 655 B

123456789101112131415161718192021
  1. use pasta_curves as pasta;
  2. use group::{Group, Curve};
  3. use rand::rngs::OsRng;
  4. fn main() {
  5. let g = pasta::vesta::Point::generator();
  6. println!("G = {:?}", g.to_affine());
  7. let x = pasta::vesta::Scalar::from(87u64);
  8. println!("x = 87 = {:?}", x);
  9. let b = g * x;
  10. println!("B = xG = {:?}", b.to_affine());
  11. let y = x - pasta::vesta::Scalar::from(90u64);
  12. println!("y = x - 90 = {:?}", y);
  13. let c = pasta::vesta::Point::random(&mut OsRng);
  14. let d = pasta::vesta::Point::random(&mut OsRng);
  15. println!("C = {:?}", c.to_affine());
  16. println!("D = {:?}", d.to_affine());
  17. println!("C + D = {:?}", (c + d).to_affine());
  18. }