Time flies, I could not believe I have already finished 12 weeks of internship in Aeste. In the last week, my main job is to write the documentation about all the coding I have done in the P3MUAT project. Still, a few minor changes are done:
i) Create our EC keys and self-signed certificate with openSSL.
Step1: To view the available curves:
openssl ecparam -list_curves
Step 2: We chose the EC key with 384 bit prime field (secp384r1). Generate it with the command below.
openssl ecparam -genkey -name secp384r1 > secp384r1.key
Step 3: Generate a CSR (Certificate Signing Request) with our key. The -sha384 select the signature algorithm SHA384 with ECDSA, the default would be SHA256 if not specfied.
openssl req -new -sha384 -key secp384r1.key -out server.csr
Step 4: Generate the self-signed certificate with our key and CSR.
openssl x509 -req -days 365 -in server.csr -signkey secp384r1.key -out server.crt
“secp384r1.key” is the server private key; “server.crt” is the server certificate.
ii) Replace the example RSA keys used in CORS and EC keys used in OTA with our new keys.
iii) In order to avoid misbehavior on the FPGA in the case that the FPGA configuration did not succeed, now we hold the PROGRAM_B pin of FPGA (PINF1 on PIC32) low if the FPGA configuration fail. This will reset the FPGA and force the FPGA I/O pins into high-Z so that it electrically detached with the connected devices.
iv) Slightly arrange the code structure to maintain the consistency. As well as cleaning up the unnecessary debugging lines and comments.
I have to admit that I had met quite a few difficulties along the progress, I had the time where I am totally lost and don’t have the slightest idea of how to proceed, and I also had made silly mistakes that trapped myself inside. But the good thing is that now I realize how much more I need to improve myself, it is indeed a lifelong journey. For me, I think it is good to feel stupid and be defeated, because you either feel it now, or you feel it in the future (where it is highly more likely to be able to ruin some big deal). Now I am motivated by how bad I am haha. I don’t know why but somehow I feel like I have graduated from an important phase of life.
To all the wonderful people I have met in this internship, it is really nice to meet all of you guys. Take care and farewell.