public async Task CreateRepository(string repo, string passphrase, string adminKey) { if (!configProvider.GetAdminKey().Equals(adminKey)) { throw new MemzException(MemzErrorCode.InvalidAdminKey, "Invalid admin key"); } var repoKey = crypto.GenerateRandomBytes(128); var repoKeyPacket = crypto.PassphraseEncrypt(Encoding.UTF8.GetBytes(passphrase), repoKey); RepositoryManifest manifest = new(RepositoryVersion, repoKeyPacket.ToString()); await driver.CreateRepositoryAsync(repo); await SetRepositoryManifest(repo, manifest); }