Photo by Headway on Unsplash

A long journey ahead

On the first day of the internship, I set up my AESTE account and import the PKCS#12 certificate into the chromium browser. As I started interacting with the xubuntu environment, I spent some time reading through the common Linux commands online and learned how to use the terminal effectively. In addition, I learned about the Git Workflow. For Git, the main branches consist of master and develop branches whereas the supporting branches consist of feature, release and hot-fix branches. I Read more…

Slowly Gitting It

Internship begins this week. As Dr Shawn was not around, I was introduced to the work environment by my colleague Gabriel. First things first, I got into setting up my work environment and got into knowing how things run in the company with the help of Gabriel. After the introduction, I went into the tasks assigned by Dr Shawn for this week which were to understand how to use Git ( a version control system) and WT (or pronounced Witty) Read more…

Photo by Headway on Unsplash
Photo by Tim Gouw on Unsplash

Progress Above All Else

If you have been following my blogs for awhile, it is very clear from the last few blog posts or so, that my progress on my current project has been quite slow. The main reason would be that I stucked myself trying to figure out how I could get the automatic certificate installation working in the browser. The process has been quite miserable, to say the least. The roadblocks just kept coming, one after another. It is no wonder now, Read more…

The WebCrypto API

Following up on last week’s post, it was decided that we would generate the private keys in the user’s browser, and then it would be uploaded to the server for the creation of the certificate. At first glance, this seemed to compromise security because by right the private key should not be anywhere else other than in the user’s possession. However, it would even have its own MIME type if it is not allowed to transmit the private keys somewhere Read more…

Photo by Jon Moore on Unsplash
Photo by Charles Deluvio 🇵🇭🇨🇦 on Unsplash

Back to Square One

There is nothing much to be said for this week. The only implementation I’ve attempted to get done for this week, is the part where the server application interfaces with the WooCommerce REST API, in order to create products and coupons, when an organization makes an order for a certificate. Even so, I have yet to get it fully working, as I have some weird issues with boost::json parser. Regardless, not too long after that, Dr Shawn gave me access Read more…

So it Continues…

As time goes on, the details and requirements of the project start to emerge themselves progressively. At this point of time, we have two kinds of products, one for individuals and another for organizations. In the case of organizations, they have the choice of buying an intermediate CA certificate and manage the issuing of new certificates themselves, or they entrust us with that process. Now if it is the latter option, the intermediate CA certificate will be stored in our Read more…

Photo by Jon Moore on Unsplash
Photo by Jon Moore on Unsplash

PKCS#12 in OpenSSL

On a previous blog post, I talked about the flow of my project in detail, but then I realized that I was missing something important. The crux of the matter was I mentioned that when the customers have made the order and paid for the subscription, the certificate would be created and an email will be sent to them, with a download link provided to install that certificate into the browser. This actually only applies to individual users. What about Read more…

Hitting a Brick Wall

It was about time to start writing some code since I already got the gist of how the application is gonna work overall. Nothing much has been done at this point, but so far I had set up two REST endpoints to handle both Subscription Created and Updated webhooks. As mentioned before, the Subscription Created endpoint is responsible for saving the subscription ID into the database temporarily as well as marking it as a subscription CREATED event. That’s all it Read more…

Photo by Jon Moore on Unsplash
Photo by Jon Moore on Unsplash

Fitting the Pieces Together

At this point, I am more or less aware of how the whole flow of my project is gonna work, after having a fruitful discussion with Dr Shawn. Let me first summarize the flow from the perspective of the customer: Customers can subscribe to a license, in accordance to their prefered category, i.e Hobbyists, Professionals, Organizations, etc. Upon purchasing the license successfully, they will be given a download link to whereby the certificate would be automatically installed in their browser. Read more…

Renewing Subscriptions

In the last blog post, I talked about the structure of how certificates would be created. I would now be talking a bit about the renewal process in WooCommerce subscriptions and how it relates to the renewal of the certificates as well. Subscriptions in general involves having recurring payments that are due at regular intervals, e.g: a week, a month, a year, etc. When the payments are made before or by the due date, the subscription is said to be renewed. There Read more…

Photo by Jon Moore on Unsplash