dh_groups.h 692 B

1234567891011121314151617181920212223242526272829
  1. /*
  2. * Diffie-Hellman groups
  3. * Copyright (c) 2007, Jouni Malinen <j@w1.fi>
  4. *
  5. * This software may be distributed under the terms of the BSD license.
  6. * See README for more details.
  7. */
  8. #ifndef DH_GROUPS_H
  9. #define DH_GROUPS_H
  10. struct dh_group {
  11. int id;
  12. const u8 *generator;
  13. size_t generator_len;
  14. const u8 *prime;
  15. size_t prime_len;
  16. const u8 *order;
  17. size_t order_len;
  18. unsigned int safe_prime:1;
  19. };
  20. const struct dh_group * dh_groups_get(int id);
  21. struct wpabuf * dh_init(const struct dh_group *dh, struct wpabuf **priv);
  22. struct wpabuf * dh_derive_shared(const struct wpabuf *peer_public,
  23. const struct wpabuf *own_private,
  24. const struct dh_group *dh);
  25. #endif /* DH_GROUPS_H */