Pascal Coin ($PASC) is not a Bitcoin clone. It is not a fork from Bitcoin. It has been written from the ground up in Pascal, yes you heard me right. This is one of the things that first attracted me, Pascal is a seriously underrated and elegant language.
How is this achieved?
A deletable block chain – you do not need the full chain to operate safely – just the last 100 blocks and the latest SafeBox – more on that later. The choice is yours however, if you want to run a full chain you can. But the ability to run a validated chain on the SafeBox and a small number of blocks means that PascalCoin is quick to get up and running and will ideal where space is at a premium such as mobile devices.
An additional benefit of the approach is the addressing scheme.
When you want to send $PASC you do not use public key style addresses like Bitcoin (3MHjwfs6W2HYHWoufmps98sjvYhVqgpXqT) or Ethereum (0xA03199200CDD8AEfe81C0c9EECcd60fDe54D884f ) but account numbers (known as PASA) which look like 127501-23. In fact the last bit, -23 is just a check sum and you can use just the first part. You still have private and public keys, you just don’t need to publish them to have people send you $PASC. In fact you can make it easier by giving an account a name.
The use of account numbers is part of the SafeBox implementation. The problem with using keys is that there is pretty much an unlimited supply and this would mean the SafeBox size would be uncontrollable. Unlike keys which you can generate at will, the generation of account numbers is part of the mining process so is controlled. So how do you get an account number? Well:
- you can mine one
- you can buy one: the cost is dependent on the actual account numbers with, in general, the shorter numbers costing more. You can but through the wallet or from one of the PASA sites.
- you can get one from the Discord or Telegram Bot (for both you will need a wallet).
What is SafeBox?
The SafeBox is a technology unique to PascalCoin and it is basically a snapshot of the balances in each PASA using a checkpointing. The SafeBox (checkpointing) is calculated every 100 blocks. So having the last SafeBox plus the blocks created since then gives you the complete state of the blockchain. The SafeBox is cryptographically secure, retaining the aggregated proof of work difficulty within the SafeBox. This means in order to create a malicious SafeBox you would need to re-mine the entire history of blocks even those blocks are unknown.
So what else is there?
If that’s not enough, each transaction can carry a payload. This is a 256 byte of user data and can be public or encrypted making it a useful element extending the transaction functionality. One use is by exchanges where it is often used as a way of identifying user holdings.
Strong 0 confirmation guarantees: Because PascalCoin isn’t based on UTXOs but a state based currency the reliability of a transaction without any confirmations is much stronger. It is virtually impossible to undertake a double spend transaction as it is a delta operation against the accounts involved and the buyer is unable to erase the transaction from the pool. This is being made even more secure by PIP-013 (see below) which allows nodes to check other nodes unconfirmed transaction pools.
Monetized APIs: The principle is that not all smart contracts need to be completely processed on-chain. In fact recent analysis has shown that contracts, on the whole, are rarely accessed. The chain is used to secure external data and control work flows – an example is the escrow system currently in development.
Updates with Block 210000 (29th May 2018): Version 3 (V3)
The last 12 months have seen an incredible amount of activity and there are a range of PIPs (Pascal Improvement Proposal) being implemented over the next couple of months. So what are they?
Inflation reduction (PIP-10): At present the total amount of $PASC that will be created is 87,000,000. This PIP reduces that by 50%.
Developer Reward (PIP-11): This allocates a portion of the mining reward to fund future development. The aim is to provide faster time to market for improvements. PIP-18 extends this to allow for work to be commissioned on the underlying development environment (Free Pascal and Lazarus).
Pending Transaction Access (PIP-13): This allows nodes to pull some or all of the pending transactions from connected peers. This further strengthens the 0 confirmation security.
Anonymity (PIP-17): This introduces anonymity via transaction mixing (phase 1)
Here are a couple of things in the pipeline.
Layer 2 Protocol Support (PIP-16): which will facilitate the transfer of data between account. This will allow clean enveloping of Layer-2 protocols inside Layer-1 much in the same way HTTP lives inside TCP.
Proof of Work: One of the problems surrounding PascalCoin has been the centralisation of the mining process as it has been a good secondary coin for dual Ethereum Mining. One of the current aims is to create a mining algorithm that makes PascalCoin an attractive option for a large number of people. One proposed candidate is Random Hash Proof of Work (PIP-09). This is a multi hash process that is designed to be CPU friendly giving very little benefit to GPUs and ASICs.