Merge branch 'main' of https://github.com/hackku21/loc-chain-app into bluetooth

This commit is contained in:
2021-04-10 14:02:26 -05:00
6 changed files with 91 additions and 54 deletions

View File

@@ -1,54 +1,11 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter/widgets.dart';
import 'package:fast_rsa/rsa.dart';
import 'package:fast_rsa/model/bridge.pb.dart';
import 'package:path_provider/path_provider.dart';
import 'dart:io';
class KeyFileManager {
static Future<String> get _localPath async {
final directory = await getApplicationDocumentsDirectory();
return directory.path;
}
static Future<File> get _pubKeyFile async {
final path = await _localPath;
return File('$path/rsa.pub');
}
static Future<File> get _privKeyFile async {
final path = await _localPath;
return File('$path/rsa');
}
static Future<KeyPair> readKeyPair() async {
try {
String privKey = await _privKeyFile.then(
(file) => file.readAsString(),
);
String pubKey = await _pubKeyFile.then(
(file) => file.readAsString(),
);
return KeyPair(
privateKey: privKey,
publicKey: pubKey,
);
} catch (e) {
print(e);
return KeyPair();
}
}
static Future<void> writeKeyPair(KeyPair pair) async {
final File privKeyFile = await _privKeyFile;
final File pubKeyFile = await _pubKeyFile;
pubKeyFile.writeAsString(pair.publicKey);
privKeyFile.writeAsString(pair.privateKey);
}
}
import 'package:loc_chain_app/util/keyfile_manager.dart';
class KeygenPage extends StatefulWidget {
KeygenPage({Key? key, required this.title}) : super(key: key);

View File

@@ -0,0 +1,8 @@
import 'package:flutter/material.dart';
class SetupPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold();
}
}