Encrypted messaging app
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

79 lines
1.4 KiB

  1. package Seeder
  2. import (
  3. "encoding/base64"
  4. "git.tovijaeschke.xyz/tovi/Envelope/Backend/Api/Auth"
  5. "git.tovijaeschke.xyz/tovi/Envelope/Backend/Database"
  6. )
  7. var userNames = []string{
  8. "assuredcoot",
  9. "quotesteeve",
  10. "blueberriessiemens",
  11. "eliteexaggerate",
  12. "twotrice",
  13. "moderagged",
  14. "duleelderly",
  15. "stringdetailed",
  16. "nodesanymore",
  17. "sacredpolitical",
  18. "pajamasenergy",
  19. }
  20. func createUser(username string) (Database.User, error) {
  21. var (
  22. userData Database.User
  23. userKey AesKey
  24. password string
  25. err error
  26. )
  27. userKey, err = GenerateAesKey()
  28. if err != nil {
  29. panic(err)
  30. }
  31. password, err = Auth.HashPassword("password")
  32. if err != nil {
  33. return Database.User{}, err
  34. }
  35. userData = Database.User{
  36. Username: username,
  37. Password: password,
  38. AsymmetricPrivateKey: EncryptedPrivateKey,
  39. AsymmetricPublicKey: PublicKey,
  40. SymmetricKey: base64.StdEncoding.EncodeToString(
  41. EncryptWithPublicKey(userKey.Key, decodedPublicKey),
  42. ),
  43. }
  44. err = (&userData).CreateUser()
  45. return userData, err
  46. }
  47. // SeedUsers used to create dummy users for testing & development
  48. func SeedUsers() {
  49. var (
  50. i int
  51. err error
  52. )
  53. // Seed users used for conversation seeding
  54. _, err = createUser("testUser")
  55. if err != nil {
  56. panic(err)
  57. }
  58. _, err = createUser("ATestUser2")
  59. if err != nil {
  60. panic(err)
  61. }
  62. for i = 0; i <= 10; i++ {
  63. _, err = createUser(userNames[i])
  64. if err != nil {
  65. panic(err)
  66. }
  67. }
  68. }