mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-01-03 14:38:30 -04:00
Tools: specify pymonocypher version in more places
and confirm version when running tools
This commit is contained in:
parent
896acaff0b
commit
c72b044c53
@ -233,8 +233,13 @@ def sign_firmware(image, private_keyfile):
|
|||||||
try:
|
try:
|
||||||
import monocypher
|
import monocypher
|
||||||
except ImportError:
|
except ImportError:
|
||||||
Logs.error("Please install monocypher with: python3 -m pip install pymonocypher")
|
Logs.error("Please install monocypher with: python3 -m pip install pymonocypher==3.1.3.2")
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
if monocypher.__version__ != "3.1.3.2":
|
||||||
|
Logs.error("must use monocypher 3.1.3.2, please run: python3 -m pip install pymonocypher==3.1.3.2")
|
||||||
|
return None
|
||||||
|
|
||||||
try:
|
try:
|
||||||
key = open(private_keyfile, 'r').read()
|
key = open(private_keyfile, 'r').read()
|
||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
|
@ -12,7 +12,7 @@ firmware doesn't match any of the public keys in the bootloader.
|
|||||||
To generate a public/private key pair, run the following command:
|
To generate a public/private key pair, run the following command:
|
||||||
|
|
||||||
```
|
```
|
||||||
python3 -m pip install pymonocypher
|
python3 -m pip install pymonocypher==3.1.3.2
|
||||||
Tools/scripts/signing/generate_keys.py NAME
|
Tools/scripts/signing/generate_keys.py NAME
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -131,7 +131,13 @@ This opens a secure command session using your private_key.dat file to allow the
|
|||||||
securecommand getpublickeys will return the number of public keys...you will need this next
|
securecommand getpublickeys will return the number of public keys...you will need this next
|
||||||
securecommand removepublickeys 0 X where X is the number of public keys...this removes them
|
securecommand removepublickeys 0 X where X is the number of public keys...this removes them
|
||||||
```
|
```
|
||||||
Re-run the 'getpublickeys' command again to verify that all keys have been removed.
|
|
||||||
|
For example, if you have a standard firmware with the 3 ArduPilot
|
||||||
|
public keys and one of your own public keys then X will be 4 in the
|
||||||
|
above command.
|
||||||
|
|
||||||
|
Re-run the 'getpublickeys' command again to verify that all keys have
|
||||||
|
been removed.
|
||||||
|
|
||||||
Now exit MAVProxy and build a firmware using the normal bootloader but still using the --signed-fw option:
|
Now exit MAVProxy and build a firmware using the normal bootloader but still using the --signed-fw option:
|
||||||
|
|
||||||
|
@ -9,9 +9,12 @@ import base64
|
|||||||
try:
|
try:
|
||||||
import monocypher
|
import monocypher
|
||||||
except ImportError:
|
except ImportError:
|
||||||
print("Please install monocypher with: python3 -m pip install pymonocypher")
|
print("Please install monocypher with: python3 -m pip install pymonocypher==3.1.3.2")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
if monocypher.__version__ != "3.1.3.2":
|
||||||
|
Logs.error("must use monocypher 3.1.3.2, please run: python3 -m pip install pymonocypher==3.1.3.2")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
if len(sys.argv) != 2:
|
if len(sys.argv) != 2:
|
||||||
print("Usage: generate_keys.py BASENAME")
|
print("Usage: generate_keys.py BASENAME")
|
||||||
|
@ -7,12 +7,6 @@ import sys
|
|||||||
import os
|
import os
|
||||||
import base64
|
import base64
|
||||||
|
|
||||||
try:
|
|
||||||
import monocypher
|
|
||||||
except ImportError:
|
|
||||||
print("Please install monocypher with: python3 -m pip install pymonocypher")
|
|
||||||
sys.exit(1)
|
|
||||||
|
|
||||||
# get command line arguments
|
# get command line arguments
|
||||||
from argparse import ArgumentParser
|
from argparse import ArgumentParser
|
||||||
parser = ArgumentParser(description='make_secure_bl')
|
parser = ArgumentParser(description='make_secure_bl')
|
||||||
|
@ -10,9 +10,13 @@ import json, base64, zlib
|
|||||||
try:
|
try:
|
||||||
import monocypher
|
import monocypher
|
||||||
except ImportError:
|
except ImportError:
|
||||||
print("Please install monocypher with: python3 -m pip install pymonocypher")
|
print("Please install monocypher with: python3 -m pip install pymonocypher==3.1.3.2")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
if monocypher.__version__ != "3.1.3.2":
|
||||||
|
Logs.error("must use monocypher 3.1.3.2, please run: python3 -m pip install pymonocypher==3.1.3.2")
|
||||||
|
return None
|
||||||
|
|
||||||
key_len = 32
|
key_len = 32
|
||||||
sig_len = 64
|
sig_len = 64
|
||||||
sig_version = 30437
|
sig_version = 30437
|
||||||
|
Loading…
Reference in New Issue
Block a user