Phillip Edwards

Phillip Edwards

All posts by Phillip Edwards


  1. The Networking and Cryptography library (NaCl pronounced "salt") is a software library that provides the core operations required to build cryptographic tools. Sodium is a fork of NaCl with an extended API; it's portable, and binaries are available to be used by various programming languages and operating systems. It comes…

    Read more
  2. Many websites have JavaScript functions that make network requests to a server, such as a REST API. The web pages and APIs are often in different domains. This introduces security issues in that any website can request data from an API. Cross-Origin Resource Sharing (CORS) provides a solution to these…

    Read more
  3. Modern authentication systems generate JSON Web Tokens (JWT). While there are several types of JWTs, we're concentrating on access tokens. When a user successfully logs in to an application, a JWT is generated. The token is then passed in all requests to the backend. The backend can then validate the…

    Read more
  4. In the Apple operating systems macOS and iOS, software applications store essential configuration data in an information property list (plist) files. The plist files are managed by the operating system. Although macOS does have utilities for reading and writing plist files, they are low level. It's a manual and time-consuming…

    Read more
  5. Elasticsearch is a popular datastore for all types of information. It is distributed for speed and scalability and can index many types of content which makes it highly searchable. It uses simple REST APIs for ease of access.

    Read more
  6. Today, we are going to build a simple web application that implements a to-do list. The backend will be written in Go. It will use the Go Gin Web Framework which implements a high-performance HTTP server. The front end will use the Vue.js JavaScript framework to implement a single page…

    Read more
  7. API Key Best Practices and Examples

    7 min read

    When you're using a REST API, especially one that incurs costs or has usage limits, you need to use an API key to access the API in question. For example, if you're creating a user account with the Okta API, you'll need to include your API key in that request…

    Read more
  8. Offline JWT Validation with Go

    5 min read

    Modern authentication systems use and generate JSON Web Tokens (JWT). There are many different ways that JWTs are used but, in this post, we will concentrate on JWTs that are used as OIDC access tokens. When a user successfully logs in to an application using a service like Okta, an…

    Read more
  9. The Definitive Guide to WSGI

    6 min read

    Python has a number of different frameworks for building web applications. The choice of framework limits the choice of available web servers. Java also has a number of web frameworks but they are all based on the common servlet API which means that any framework can run on any web…

    Read more