summaryrefslogtreecommitdiffhomepage
path: root/cloud/core/src
diff options
context:
space:
mode:
authorFrank <[email protected]>2025-09-02 20:38:36 -0400
committerFrank <[email protected]>2025-09-02 20:38:36 -0400
commitc278e16e4ed07ac9ac89ad4e6e67ae348e2f84da (patch)
treee8c7cd4694f15b357e2670ddb97a6bc7e2a0c202 /cloud/core/src
parent4e629c5b64d52f6633e5e1a54d250b4b57c92604 (diff)
downloadopencode-c278e16e4ed07ac9ac89ad4e6e67ae348e2f84da.tar.gz
opencode-c278e16e4ed07ac9ac89ad4e6e67ae348e2f84da.zip
generate api key
Diffstat (limited to 'cloud/core/src')
-rw-r--r--cloud/core/src/key.ts9
1 files changed, 5 insertions, 4 deletions
diff --git a/cloud/core/src/key.ts b/cloud/core/src/key.ts
index b195bd7c9..7adc4096b 100644
--- a/cloud/core/src/key.ts
+++ b/cloud/core/src/key.ts
@@ -31,11 +31,12 @@ export namespace Key {
// Generate secret key: sk- + 64 random characters (upper, lower, numbers)
const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
- let randomPart = ""
- for (let i = 0; i < 64; i++) {
- randomPart += chars.charAt(Math.floor(Math.random() * chars.length))
+ let secretKey = "sk-"
+ const array = new Uint32Array(64)
+ crypto.getRandomValues(array)
+ for (let i = 0, l = array.length; i < l; i++) {
+ secretKey += chars[array[i] % chars.length]
}
- const secretKey = `sk-${randomPart}`
const keyID = Identifier.create("key")
await Database.use((tx) =>