Веб-версияОткрыть в Telegram

ВеткаПривет. как мне проверить полученную с фронта сигнатуру на js. саму сигнатуру я получил через rpc.rawApi.signData из биб…

5 сообщений · –
S
Привет. как мне проверить полученную с фронта сигнатуру на js. саму сигнатуру я получил через rpc.rawApi.signData из библиотеки everscale-inpage-provider? если использовать client.crypto.verify_signature из eversdk там нужны сами данные и публичный ключ, а rpc.rawApi.signData просто предлагает саму сигнатуру, без данных.Или полученная сигнатура это и есть данные? =)
    1. S
      как на стороне бэка инициализировать провайдер?
        1. S
          вот так работает. спасибо на стороне фронта const data = {} const data_base64 = Buffer.from(JSON.stringify(data), 'utf8').toString('base64') const encode = await rpc.rawApi.signData({ publicKey, data: data_base64 }) отправляем {data: data_base64, publicKey, signature: encode?.signature} на стороне сервера получаем {data: data_base64, publicKey, signature} const EVERCLOUD_KEY = process.env.EVERCLOUD_KEY const ENDPOINTS = `https://mainnet.evercloud.dev/${EVERCLOUD_KEY}/graphql` const provider = new ProviderRpcClient({ provider: EverscaleStandaloneClient.create({ connection: { id: 42, type: 'graphql', data: {endpoints: [ENDPOINTS]} } }) }) const data_string = Buffer.from(data_base64, 'base64').toString('utf8') const isValid = await provider.verifySignature({ publicKey, signature, dataHash: sha256(data_string) })

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем