I made an unreasonably hacky baby step.
const crypto = require('crypto')
const ssbKeys = require('ssb-keys')
let addr = ''
let keys = null
while (addr.startsWith('fc') === false) {
keys = ssbKeys.generate()
const { public } = keys
addr = crypto
.createHash('sha512')
.update(public)
.digest('hex')
.slice(0, 32)
.match(/.{1,4}/g)
.join(':')
}
console.log(keys)
console.log(addr)
{ curve: 'ed25519',
public: 'UoiIIO4uFUZMfE4svS0uY2ZZqyixAaafVbc+8nNq71U=.ed25519',
private:
'redacted',
id: '@UoiIIO4uFUZMfE4svS0uY2ZZqyixAaafVbc+8nNq71U=.ed25519' }
fcdf:a047:9ab0:c779:1a9d:6846:0628:bba9