Abstract: NFTs are used to provide software licensing and DRM in a manner that is transferrable, allowing licensees to swap and resell licensed software according to terms specified by the licensor. NFTs are used to prove ownership of software and other digital assets on a blockchain. The blockchain provides a distributed public ledger that enables the tracking of ownership of the assets, without the use of a centralized server. Since software and other digital content licenses concern digital assets, they can be granted, tracked, and revoked on the blockchain via the use of NFTs. NFTs and the blockchain therefore provide a mechanism which is used to verify and authenticate software licenses, digital content licenses, and other types of licenses for digital assets. Smart contracts may be used to define and enforce the terms of the licenses, at any level of granularity.