Как использовать ключ в формате pem от яндекс навигатора на языке dart

Варианты на других языках в документации яндекс навигатор апи

import 'package:encrypt/encrypt.dart';
import 'package:crypto/crypto.dart';
import 'dart:convert' ;

void main () async {

String initUrl = 'yandexnavi://build_route_on_map? 
lat_to=$lat_to&lon_to=$lon_to&client=$client';

var bytes = utf8.encode(initUrl);
Digest sha256Result = sha256.convert(bytes);

var fileString = await 
rootBundle.loadString('resources/private_key.pem');

final parser = RSAKeyParser();

dynamic privateKey = parser.parse(fileString);

final signer = Signer(RSASigner(RSASignDigest.SHA256, privateKey: 
 privateKey ));

var signature = signer.sign(base64.encode(bytes)).base64;

var  ynaviUrl = 'yandexnavi://build_route_on_map? 
lat_to=$lat_to&lon_to=$lon_to&client=$client&signature=$signature';

}

Ответы (0 шт):