Blockchain TD
Blockchain TD
Blockchain TD
CoinCar allows individuals to rent out their cars (a sort of AirBnB for cars, or OuiCar) or
other vehicles.
We assume that the cars are smart connected cars. Each car is equipped with a long-range
communication module (for example, 4G/5G) as well as a short-range communication module
(for example, Bluetooth, NFC). This implies that the car can communicate over the Internet as
well as with user devices (such as smartphones) located in the vicinity.
Cars are electronically accessible by users through their smart phones. A car grants access
only to a user who is authorized.
At any given time, a car has one owner, and can have one or no renter. The owner of the car
can authorize one (and only one) renter at a time to access and use the car for a fixed duration.
The owner of the car can also transfer the ownership of the car, that is, sell the car to another
user.
The owner of a car can publish the availability of the car for some chosen dates, as well as the
rent/unit of time, address, and other details of the car (brand, model, etc.).
Renters can search for available cars that correspond to their preferred criteria. They can
specify the desired location, rent, type, etc.
When a renter discovers an available car that he wishes to rent, he sends a request to the
owner for a specific duration along with mandatory credentials, which include national
identity card (or equivalent document), driving license, and insurance. The owner can then
approve the request by granting access to the renter for the requested duration.
The renter is able to access the car during the authorized duration. However, a condition for
access is that the renter pays in advance for the entire duration. The car is locked down after
the duration expires. Moreover, the car monitors its location and limits the mobility of the car
as defined and published by the owner (e.g., no trip abroad).
The purpose of the TD is to study and design a solution for implementing the CoinCar service
on top of the Bitcoin blockchain.
1
Exercise 1 (Identity Management) (Bitcoin Address)
There is no central authority to issue or manage identities on the Bitcoin blockchain.
Describe how some kind of identities (“addresses”) are generated for users (owners, renters,
car manufacturers) such that they are uniquely identified on the blockchain (i.e., 2 different
users => 2 different addresses).
Calculate the probability that two users will both generate the same identity (“address
collision”) if there are 7.8 billion users in total (approximately the population of Earth). Note:
There are 2^160 possible Bitcoin addresses.
Exercise 3 (advertisement)
Describe a scheme for an owner to publish the availability and the rental conditions (e.g.,
rental cost, animal allowed/not allowed, trans-border trip allowed/not allowed…) of a car on
the blockchain.