# Housing Rental Scheme Based on Redactable Blockchain

Authors: Chunli Wang; Wensheng Jia; Yuling Chen
Journal: Wireless Communications and Mobile Computing
 (2022)

---

## Abstract

With the increase of the housing population, it is very important for renters to find credible housing information through rental platforms. However, due to the imperfection of relevant laws and insufficient supervision of the housing rental market, problems have emerged one after another. In this article, we propose a housing rental scheme based on redactable blockchain, introducing a trusted third party to verify the homeowner rental listings, and fundamentally preventing false listings from flowing into the housing rental market. Specifically, a trusted third party similar to the housing authority will issue a verifiable claim for the homeowners listing, and then the accounting node of the consortium blockchain will publish the verified listing information on the blockchain so as tenants to make inquiries according to their needs. At the same time, we use the new chameleon hash to build a redactable blockchain. After the homeowner proposes to change the housing price or housing information, the content of the historical block is modified as required. Thus, to a certain extent, the changes in housing prices can be monitored to curb chaos in the housing rental market.


---

## Body

## 1. Introduction

With the development of social economy and changes of people’s concepts, not only the housing rental market’s demand has increased significantly but also the number of renters has increased year by year. Nevertheless, the housing rental market is experiencing frequent occurrences. For example, the proliferation of false listings, the asymmetry of information in the leasing market, the serious leakage of customer information, and the low efficiency of industry transactions have caused chaos in the housing leasing market. The abovementioned problems have severely affected the vigorous development of the housing rental market and increased the additional burden of renters. Solving the various problems in the housing rental market plays a very important role in meeting the housing needs of residents and promoting stable economic and social development.Therefore, we propose a housing leasing program based on blockchain. The blockchain is essentially a decentralized database. There is no centralized third-party organization in the blockchain system. Blockchain transactions are generated by participating entities. The transactions are packaged into blocks and added to the blockchain by miners in chronological order [1]. Participating entities in the blockchain need to update the block regularly and store it. Public chains are mature in Bitcoin and Ether, but private chains have emerged due to the real demand. There are selfish mining attacks in blockchain where attackers compromise the blockchain system by exploiting the vulnerability of the consensus mechanism [2]; while semiselfish mining attacks are proved by Li et al. through simulation that semiselfish mining is impossible in practice [3]. At present, blockchain has been used in many scenarios such as medical care, finance, and the Internet of Things. However, the use of blockchain in these scenarios cannot be directly applied to the housing rental market.In the blockchain, information is disseminated according to the public key and private key, an asymmetric digital encryption technology to achieve mutual trust between the two sides of the transaction. The public key and the key appear in pairs, and the public key is broadcasted for other users to know, while the private key is kept by the users themselves. In terms of public key setting, Chen et al. proposed a dynamic multikey FHE scheme based on the LWE assumption of public key setting [4], which uses the product of the public key and the product of a uniform random matrix to hide the secret key and improve the security of the public and private keys.Accordingly, based upon the foregoing, we propose a plan to combine the blockchain with the housing leasing market to solve various problems in the leasing market. By introducing a trusted third-party verification agency, a weakly centralized blockchain is built to solve the problems of information asymmetry, illegal subletting, and tenant information leakage in the housing rental market. The homeowner submits the information of the house to be rented to a trusted third party for verification. The third-party agency verifies the housing information to ensure the authenticity and reliability of the rental housing and sends a verifiable certification claim to the verified homeowner. The homeowner sends the basic information and certification claim of the rented house to the accounting node. The accounting node verifies the certification claim and publishes the verified housing rental information on the blockchain for tenants to query. The tenant can query the rental information in the blockchain by paying a certain token RentCoin. When the homeowner and the tenant reach an agreement on renting a house, they automatically start the transaction by triggering a smart contract. After the lease transaction is generated, the homeowner and tenant pay a certain amount of RentCoin to the consortium blockchain nodes as a transaction fee. In this process, the tenant’s information is only known to the homeowner. So, there is no leakage of the tenant’s information.The main contributions of this paper can be summarized as follows:(1)
We propose a scheme for house leasing based on blockchain technology. By introducing a trusted third party, we ensure the authenticity of rental information. Solve the problem of information asymmetry between homeowners and tenants in the housing rental market. In addition, our scheme has no housing intermediary, which saves the cost of housing intermediary(2)
The introduction of smart contract technology has improved the fairness of house leasing transactions. The conditions for triggering the smart contract are met, then the transaction is automatically executed, which improves the fairness of industry transactions(3)
Introduce a new chameleon hash to the consortium blockchain to reduce user interaction and realize the editability of the consortium blockchainThe rest of this paper is organized as follows. We review related work in Section2. Section 3 introduces the relevant background knowledge that will be used in this article. We introduce the system model, threat model, and design goals in Section 4. Section 5 describes our proposed scheme in detail. Finally, Section 6 concludes the article.


## 2. Related Work

The chameleon hash and signature were proposed by Krawczyk and Rabin in 2000 to prohibit the recipient from freely disclosing the content of the signature information to any third party without the consent of the signatory [5]. But in the scheme proposed by Krawczyk and Rabin, there is the problem of key exposure. Therefore, some people have proposed whether it is possible to construct a chameleon hash and signature without key exposure. In 2004, Chen et al. first proposed an identity-based keyless exposure scheme. In this scheme, the author introduces a three-trapdoor mechanism, each transaction has its own trapdoor key, and no third party can create a trapdoor key that has not appeared before. Therefore, this scheme does not have the problem of key exposure [6].In 2008, Nakamoto explained the blockchain technology in the article Bitcoin: A Peer-to-Peer Electronic Cash System [7]. Since blockchain technology was proposed, it has been applied to many fields such as vehicle transportation, securities finance, medical, and health care. The application of blockchain technology in specific scenarios is also becoming more mature. For example, Kang and others applied blockchain to vehicle edge computing and secure data sharing in 2019. Using consortium blockchain and smart contracts, the author built a secure vehicle data storage and sharing system [8]. Subramaniam et al. used blockchain technology to prevent credit fraud in 2020 and combined with Near Field Communication (NFC) to demonstrate the effect of this scheme [9]. Xu and others proposed a blockchain-based large-scale health data privacy protection scheme in 2019. The solution introduces the star file system (IPFS) to solve the storage problem of large-scale health data and realizes the privacy protection of health data based on blockchain technology. The author fully explained the program and gave the specific details of its implementation [10]. Chen et al. proposed a source location privacy (SLP) protection scheme (PSSPR) based on sector domain phantom routing in WSNs in 2021. The scheme has good performance in security [11].In 2019, Ashritha et al. applied chameleon hash to blockchain and proposed redactable blockchain for the first time [12]. The introduction of chameleon hash can modify the content of the block without changing the block hash and other block contents. The master key in this scheme is dispersed among the master nodes based on secret sharing. When the content of a block is to be modified, the master node holding the master key share reconstructs the master key by secure multiparty computation to achieve the modification of the block content. In 2020, Xu et al. use editable blockchain for the management and authentication of mobile network identity. The article enables users to securely master their personal identity information by introducing self-sovereign identity. What is more, it empowers easier and faster identity verification between users and network operators through editable blockchain and permits operators to dynamically revoke users through chameleon hashing [13]. The proposed redactable blockchain provides more scenarios for the practical application of blockchain.In this paper, we introduce a new chameleon hash to achieve the editable character of the consortium blockchain as a way to build a housing rental platform. The method can solve the problems of information asymmetry and privacy leakage brought by the housing rental market to a certain extent.


## 3. Preliminaries

In this section, we introduce the background knowledge that will be used in this paper, including secret sharing, identity-based encryption, the new chameleon hash algorithm, and smart contracts.


### 3.1. Secret Sharing

Secret sharing was first proposed by Sharmir and Blakley in 1979 as the rational distribution of shared secrets among a group of users in order to achieve a shared ownership of the secret by all group members [14, 15]. Later in 1985, Chor et al. introduced the concept of verifiable secret sharing [16]. The concept was proposed considering the existence of dishonest participants in the secret sharing scheme, and it added some public commitment and verification algorithms to the secret sharing scheme as a way to detect dishonest users falsifying their secret shares [17–19]. Verifiable secret sharing assumes the existence of a secret S that is divided in a specific way into n shares S1,S2,⋯,Sn and securely given to n individuals for safekeeping, and the algorithmic process is the following two steps.
(1)
Secret Distribution AlgorithmShareS=S1,S2,⋯,Sn. Given a secret S, n shares are randomly generated in a specific way(2)
Secret Recovery AlgorithmRecS1,S2,⋯,Sn=S∪⊥. Given the secret share S1,S2,⋯,Sn, recover the secret S or return the outlier ⊥Ak,n-verifiable secret sharing scheme needs to satisfy the following two requirements.
(1)
Verifiability. A user can test whether a secret share is a valid share after receiving it. If the share is valid, the secret recovery algorithm can output a unique secret S. Any k valid shares out of n shares or more than k valid shares can recover the secret S(2)
Unpredictability. For polynomial-time algorithms, any less than k valid shares among n shares cannot fully recover the secret SIfk is larger, the higher the security of the secret sharing scheme. When k=n, all the secret sharers need to reconstruct the secret S together.


### 3.2. Self-Sovereign Identity

Self-sovereign identity (SSI) was proposed by Toth and Anderson-Priddy in 2019 [20], where each identity is fully owned, controlled, and managed by the owner of the identity. By virtue of a self-sovereign identity, users have full control over how their personal information is kept and used. Users with SSIs can store their data locally without relying on a central data repository. A service provider or organization can only access information about a user with the consent of SSI’s owner. Thus, self-sovereign identity provides users with added security and flexibility.


### 3.3. Chameleon Hash

The chameleon hash was proposed by Krawczyk and Rabin in 2000 to prohibit the recipient from disclosing the contents of a signed message to any third party at will without the consent of the signer. The chameleon hash function is a cryptographic hash function that contains trapdoor information. The manager who has the trapdoor information can generate hash collisions based on the trapdoor information [1]. The chameleon hash satisfies the following security requirements.
(1)
Collision Resistance. When inputting the public key hk, there is no effective algorithm to find the pair m1,r1, m2,r2 such that Hashhk,m1,r1=Hashhk,m2,r2, where m1≠m2(2)
Trapdoor Collision. At the input of trapdoor key tk, there exists a valid algorithm for any m1, r1, given m2 can find r2 such that Hashhk,m1,r1=Hashhk,m2,r2(3)
Semantic Security. For arbitrary messages m1、m2, the probability distributions of Hashhk,m1,r1 and Hashhk,m2,r2 are indistinguishable. In particular, for a randomly chosenr, no information about m can be inferred from Hashhk,m,rAteniese et al. replaced the hash of the block header in the blockchain with a chameleon hash to make the blockchain editable [21]. In 2018, Li et al. proposed a new chameleon hash for consortium blockchains, which gives each user of the consortium blockchain the right to modify the historical blocks without the need for multiparty interaction. The modification can be completed when the conditions for modification triggering are satisfied, i.e., a user is randomly selected according to the rules [22]. The random number r=r1,r2,⋯,rn in the new chameleon hash function and the trapdoor key x1,x2,⋯,xn are held by n users P1,P2,⋯,Pn in the consortium chain, respectively. The public keys of the n users are HK1,HK2,⋯,HKn, respectively. The new chameleon hash function is constructed as follows.
(1)
Setupλ. Input security parameter λ, construct large prime p,q satisfying security parameter λ, where p=kq+1, select element g of order q in multiplicative cyclic group Zp∗, output public parameter pp=p,q,g(2)
KeyGenpp. Input the public parameter pp, randomly select the indices x1∈Zq∗,x2∈Zq∗,⋯,xn∈Zq∗, and calculate h1=gx1,h2=gx2,⋯,hn=gxn. Then the trapdoor private key TK=x1,x2,⋯,xn, the public key HK=g,h1,h2,⋯,hn(3)
HashHK,m,r. Input hash public key HK=g,h1,h2,⋯,hn, message m and random number r=r1,r2,⋯,rn, output chameleon hash CH=gmh1r1h2r2⋯hnrnmodp(4)
ForgeTKi,m,r,m′. Input trapdoor private key TKi=xi, message m, random number r=r1,r2,⋯,rn, message m′. Then according to CH=gm′h1r1⋯hiri′⋯hnrnmodp, we can get m+x1r1+⋯+xiri+⋯+xnrn=m′+x1r1+⋯+xiri′+⋯+xnrnmodq, and we can calculate that ri′=m−m′+xirixi−1modqA userPi with trapdoor key xi can run the forge algorithm to find collisions such that HashHK,m,r=HashHK,m′,r′. Applying the new chameleon hash to the consortium blockchain can effectively reduce the interaction between users. Because each user in the consortium chain has the trapdoor key of the chameleon hash function, each can use their own trapdoor key to compute the new random number r′ corresponding to the message m such that Hashm,r=Hashm′,r′. However, the modified block published by the user must satisfy the following two conditions to be accepted: (1) more than half of the users in the system agree to the modification, i.e., it contains the votes and signatures of more than half of the users; (2) the user who modifies the block is indeed the one corresponding to the smallest hash value obtained by computing the Lagrange interpolation formula.


### 3.4.n Noncooperative Game

LetN=1,⋯,n be the set of insiders, ∀i∈N. The pure strategy set of insider i is the finite set Si=si1,⋯,simi, and the mixed strategy set is Xi=xi=xi1,⋯,ximi:xiki≥0,ki=1,⋯,mi,∑ki=1mixiki=1. When each inning i chooses the pure strategy sik∈Si, i=1,⋯,n, the inning i gets paid as the real number Ris1k1,⋯,snkn, and note that X=∏i=1nXi,∀x=x1,⋯,xn∈X. When each inning i chooses a mixed strategy xi=xi1,⋯,ximi∈Xi (i.e., inning i chooses the pure strategy si1,⋯, with probability xi1, and the pure strategy simi with probability ximi) with i=1,⋯,n, and assumes that their choices are independent, then inning i gets an expected payoff that is real
(1)fix1,⋯,xn=∑k1=1m1⋯∑kn=1mnRis1k1,⋯,snkn∏i=1nxiki.∀i∈N, noting i^=N\i. Each inning is rational and wants to get the maximum benefit for itself. Therefore, if there exists x∗=x1∗,⋯,xn∗∈X such that ∀i∈N, there is fixi∗,xi^∗=maxui∈Xifiui,xi^∗. Then x∗ the Nash equilibrium point of this n-person noncooperative game, at which point each inning cannot make itself more profitable by individually changing its strategy [23, 24].


### 3.5. Smart Contract

Smart contracts are an idea first proposed by Szabo in 1994 and published on the website of the Extropy Institute [25]. A smart contract is defined as an event-driven, stateful program that runs on top of a replicated and shared ledger that holds the assets on the ledger [26]. Smart contracts can improve the fairness of housing lease transactions by simplifying issues such as the signing of housing lease contracts and subsequent defaults.


## 3.1. Secret Sharing

Secret sharing was first proposed by Sharmir and Blakley in 1979 as the rational distribution of shared secrets among a group of users in order to achieve a shared ownership of the secret by all group members [14, 15]. Later in 1985, Chor et al. introduced the concept of verifiable secret sharing [16]. The concept was proposed considering the existence of dishonest participants in the secret sharing scheme, and it added some public commitment and verification algorithms to the secret sharing scheme as a way to detect dishonest users falsifying their secret shares [17–19]. Verifiable secret sharing assumes the existence of a secret S that is divided in a specific way into n shares S1,S2,⋯,Sn and securely given to n individuals for safekeeping, and the algorithmic process is the following two steps.
(1)
Secret Distribution AlgorithmShareS=S1,S2,⋯,Sn. Given a secret S, n shares are randomly generated in a specific way(2)
Secret Recovery AlgorithmRecS1,S2,⋯,Sn=S∪⊥. Given the secret share S1,S2,⋯,Sn, recover the secret S or return the outlier ⊥Ak,n-verifiable secret sharing scheme needs to satisfy the following two requirements.
(1)
Verifiability. A user can test whether a secret share is a valid share after receiving it. If the share is valid, the secret recovery algorithm can output a unique secret S. Any k valid shares out of n shares or more than k valid shares can recover the secret S(2)
Unpredictability. For polynomial-time algorithms, any less than k valid shares among n shares cannot fully recover the secret SIfk is larger, the higher the security of the secret sharing scheme. When k=n, all the secret sharers need to reconstruct the secret S together.


## 3.2. Self-Sovereign Identity

Self-sovereign identity (SSI) was proposed by Toth and Anderson-Priddy in 2019 [20], where each identity is fully owned, controlled, and managed by the owner of the identity. By virtue of a self-sovereign identity, users have full control over how their personal information is kept and used. Users with SSIs can store their data locally without relying on a central data repository. A service provider or organization can only access information about a user with the consent of SSI’s owner. Thus, self-sovereign identity provides users with added security and flexibility.


## 3.3. Chameleon Hash

The chameleon hash was proposed by Krawczyk and Rabin in 2000 to prohibit the recipient from disclosing the contents of a signed message to any third party at will without the consent of the signer. The chameleon hash function is a cryptographic hash function that contains trapdoor information. The manager who has the trapdoor information can generate hash collisions based on the trapdoor information [1]. The chameleon hash satisfies the following security requirements.
(1)
Collision Resistance. When inputting the public key hk, there is no effective algorithm to find the pair m1,r1, m2,r2 such that Hashhk,m1,r1=Hashhk,m2,r2, where m1≠m2(2)
Trapdoor Collision. At the input of trapdoor key tk, there exists a valid algorithm for any m1, r1, given m2 can find r2 such that Hashhk,m1,r1=Hashhk,m2,r2(3)
Semantic Security. For arbitrary messages m1、m2, the probability distributions of Hashhk,m1,r1 and Hashhk,m2,r2 are indistinguishable. In particular, for a randomly chosenr, no information about m can be inferred from Hashhk,m,rAteniese et al. replaced the hash of the block header in the blockchain with a chameleon hash to make the blockchain editable [21]. In 2018, Li et al. proposed a new chameleon hash for consortium blockchains, which gives each user of the consortium blockchain the right to modify the historical blocks without the need for multiparty interaction. The modification can be completed when the conditions for modification triggering are satisfied, i.e., a user is randomly selected according to the rules [22]. The random number r=r1,r2,⋯,rn in the new chameleon hash function and the trapdoor key x1,x2,⋯,xn are held by n users P1,P2,⋯,Pn in the consortium chain, respectively. The public keys of the n users are HK1,HK2,⋯,HKn, respectively. The new chameleon hash function is constructed as follows.
(1)
Setupλ. Input security parameter λ, construct large prime p,q satisfying security parameter λ, where p=kq+1, select element g of order q in multiplicative cyclic group Zp∗, output public parameter pp=p,q,g(2)
KeyGenpp. Input the public parameter pp, randomly select the indices x1∈Zq∗,x2∈Zq∗,⋯,xn∈Zq∗, and calculate h1=gx1,h2=gx2,⋯,hn=gxn. Then the trapdoor private key TK=x1,x2,⋯,xn, the public key HK=g,h1,h2,⋯,hn(3)
HashHK,m,r. Input hash public key HK=g,h1,h2,⋯,hn, message m and random number r=r1,r2,⋯,rn, output chameleon hash CH=gmh1r1h2r2⋯hnrnmodp(4)
ForgeTKi,m,r,m′. Input trapdoor private key TKi=xi, message m, random number r=r1,r2,⋯,rn, message m′. Then according to CH=gm′h1r1⋯hiri′⋯hnrnmodp, we can get m+x1r1+⋯+xiri+⋯+xnrn=m′+x1r1+⋯+xiri′+⋯+xnrnmodq, and we can calculate that ri′=m−m′+xirixi−1modqA userPi with trapdoor key xi can run the forge algorithm to find collisions such that HashHK,m,r=HashHK,m′,r′. Applying the new chameleon hash to the consortium blockchain can effectively reduce the interaction between users. Because each user in the consortium chain has the trapdoor key of the chameleon hash function, each can use their own trapdoor key to compute the new random number r′ corresponding to the message m such that Hashm,r=Hashm′,r′. However, the modified block published by the user must satisfy the following two conditions to be accepted: (1) more than half of the users in the system agree to the modification, i.e., it contains the votes and signatures of more than half of the users; (2) the user who modifies the block is indeed the one corresponding to the smallest hash value obtained by computing the Lagrange interpolation formula.


## 3.4.n Noncooperative Game

LetN=1,⋯,n be the set of insiders, ∀i∈N. The pure strategy set of insider i is the finite set Si=si1,⋯,simi, and the mixed strategy set is Xi=xi=xi1,⋯,ximi:xiki≥0,ki=1,⋯,mi,∑ki=1mixiki=1. When each inning i chooses the pure strategy sik∈Si, i=1,⋯,n, the inning i gets paid as the real number Ris1k1,⋯,snkn, and note that X=∏i=1nXi,∀x=x1,⋯,xn∈X. When each inning i chooses a mixed strategy xi=xi1,⋯,ximi∈Xi (i.e., inning i chooses the pure strategy si1,⋯, with probability xi1, and the pure strategy simi with probability ximi) with i=1,⋯,n, and assumes that their choices are independent, then inning i gets an expected payoff that is real
(1)fix1,⋯,xn=∑k1=1m1⋯∑kn=1mnRis1k1,⋯,snkn∏i=1nxiki.∀i∈N, noting i^=N\i. Each inning is rational and wants to get the maximum benefit for itself. Therefore, if there exists x∗=x1∗,⋯,xn∗∈X such that ∀i∈N, there is fixi∗,xi^∗=maxui∈Xifiui,xi^∗. Then x∗ the Nash equilibrium point of this n-person noncooperative game, at which point each inning cannot make itself more profitable by individually changing its strategy [23, 24].


## 3.5. Smart Contract

Smart contracts are an idea first proposed by Szabo in 1994 and published on the website of the Extropy Institute [25]. A smart contract is defined as an event-driven, stateful program that runs on top of a replicated and shared ledger that holds the assets on the ledger [26]. Smart contracts can improve the fairness of housing lease transactions by simplifying issues such as the signing of housing lease contracts and subsequent defaults.


## 4. System Model, Threat Model, and Design Goals

### 4.1. System Model

As shown in Figure1 below, the specific description is shown as follows.Figure 1
System model.


#### 4.1.1. House Owner

The homeowner is the owner of the home. They certify the home for rent through a certification agency. A landlord may have more than one home to rent, so a landlord can have multiple verifiable certification statements at the same time. The innkeeper stores the relevant certification statements locally and presents them to the tenant as the tenant needs them.


#### 4.1.2. Tenant

Tenants query the blockchain to get the desired property information. And sign a lease contract with the landlord based on smart contract.


#### 4.1.3. Certification Body

Certification bodies are distributed trusted entities, such as housing authorities. They issue a verifiable certification statement against the homeowner’s listing that includes the certification authority’s signature for others to verify. There is a relationship of trust between the certification authority and the homeowner. All the certification bodies form a consortium to maintain the consortium blockchain. When the owner pays the appropriate number of tokens RentCoin, the certification body can modify the contents of the blockchain with trapdoor information according to the owner’s needs while keeping the block hash value unchanged.


#### 4.1.4. Blockchain

It is a consortium blockchain maintained by accounting nodes for publishing the listing information and verifiable authentication claims of the homeowner. Any tenant can read the information on the blockchain. The transactions in each block form the Merkle hash tree of the respective block, where the first level of the hash tree is a new chameleon hash. An accounting node can modify the content of a transaction while keeping the block header unchanged.


#### 4.1.5. Accounting Node

This node is a special node in the consortium blockchain where a trusted third-party acts as the accounting node for the consortium chain. It verifies the validity of the signatures of verifiable claims issued by the certification authority. At each time period, the consortium blockchain consisting of certification authorities chooses a leader, which is rotated by the certification authorities. The leader needs to pack valid transactions from the homeowner, generate new blocks, and join them to the consortium blockchain.First, the homeowner sends the encrypted house information to the relevant certification authority according to the demand for rental. Second, the authentication agency decrypts and authenticates the information of the house. It also sends a verifiable claim to the authenticated owner. Finally, the owner sends the encrypted verifiable claims and the rental information of the house to the accounting node of the consortium blockchain. The leader of the consortium chain broadcasts the legitimate transaction to the other accounting nodes after verification. After they verify the signature, the leader adds the rental information to the consortium blockchain as a transaction for tenants to query and search.


### 4.2. Threat Model

We assume that a secure channel exists between the individual nodes. The certification authority strictly enforces the certification statement and authenticates truthfully. There are active and passive adversaries in the system. Passive adversaries obtain transaction data by eavesdropping on homeowners or analyzing leases between homeowners and tenants. Unlike passive adversaries, active adversaries may interrupt lease transactions between homeowners and tenants.In addition, we assume that there are3f+1 accounting nodes in the consortium chain to maintain the blockchain and that there are no more than f malicious nodes in the consortium chain.


### 4.3. Design Goals

Our goal is to achieve privacy and security, information symmetry, transaction fairness, and legal subletting in the rental market. Therefore, our design objectives are shown below.


#### 4.3.1. Confidentiality of Property Information

The owner sends the ownership and other information of the house to the verification agency through a secure channel, and no third party can get the encrypted house information in the process, i.e., no agent can get the information of the rental property.


#### 4.3.2. Authorized Home Ownership Certification

The certification claim issued by the certification agency must determine the match and authenticity of the homeowner’s identity information and the housing information. It ensures the authenticity of the housing information as well as reduces the information asymmetry between homeowners and tenants.


#### 4.3.3. Transaction Security

The rental transactions between landlords and tenants are only accessible to the house owner and dwellers themselves. No counterparty has access to the transaction information between them. There is also no third party to modify the transaction without the consent of the owner and tenant.


#### 4.3.4. Privacy

Only the landlord and renter know their private information during the transaction. No third party has access to their private information without their permission.


#### 4.3.5. Accountability

The rental contract signed by the leaseholder and landlord is based on a smart contract. They must be responsible for the contract they have signed and cannot break or deny the contents of the contract.


#### 4.3.6. Legality of Subletting

If the landlord agrees to the tenant’s subletting of an unexpired property, the house owner uses his or her private key to grant the boarder the legal right to sublet.


## 4.1. System Model

As shown in Figure1 below, the specific description is shown as follows.Figure 1
System model.


### 4.1.1. House Owner

The homeowner is the owner of the home. They certify the home for rent through a certification agency. A landlord may have more than one home to rent, so a landlord can have multiple verifiable certification statements at the same time. The innkeeper stores the relevant certification statements locally and presents them to the tenant as the tenant needs them.


### 4.1.2. Tenant

Tenants query the blockchain to get the desired property information. And sign a lease contract with the landlord based on smart contract.


### 4.1.3. Certification Body

Certification bodies are distributed trusted entities, such as housing authorities. They issue a verifiable certification statement against the homeowner’s listing that includes the certification authority’s signature for others to verify. There is a relationship of trust between the certification authority and the homeowner. All the certification bodies form a consortium to maintain the consortium blockchain. When the owner pays the appropriate number of tokens RentCoin, the certification body can modify the contents of the blockchain with trapdoor information according to the owner’s needs while keeping the block hash value unchanged.


### 4.1.4. Blockchain

It is a consortium blockchain maintained by accounting nodes for publishing the listing information and verifiable authentication claims of the homeowner. Any tenant can read the information on the blockchain. The transactions in each block form the Merkle hash tree of the respective block, where the first level of the hash tree is a new chameleon hash. An accounting node can modify the content of a transaction while keeping the block header unchanged.


### 4.1.5. Accounting Node

This node is a special node in the consortium blockchain where a trusted third-party acts as the accounting node for the consortium chain. It verifies the validity of the signatures of verifiable claims issued by the certification authority. At each time period, the consortium blockchain consisting of certification authorities chooses a leader, which is rotated by the certification authorities. The leader needs to pack valid transactions from the homeowner, generate new blocks, and join them to the consortium blockchain.First, the homeowner sends the encrypted house information to the relevant certification authority according to the demand for rental. Second, the authentication agency decrypts and authenticates the information of the house. It also sends a verifiable claim to the authenticated owner. Finally, the owner sends the encrypted verifiable claims and the rental information of the house to the accounting node of the consortium blockchain. The leader of the consortium chain broadcasts the legitimate transaction to the other accounting nodes after verification. After they verify the signature, the leader adds the rental information to the consortium blockchain as a transaction for tenants to query and search.


## 4.1.1. House Owner

The homeowner is the owner of the home. They certify the home for rent through a certification agency. A landlord may have more than one home to rent, so a landlord can have multiple verifiable certification statements at the same time. The innkeeper stores the relevant certification statements locally and presents them to the tenant as the tenant needs them.


## 4.1.2. Tenant

Tenants query the blockchain to get the desired property information. And sign a lease contract with the landlord based on smart contract.


## 4.1.3. Certification Body

Certification bodies are distributed trusted entities, such as housing authorities. They issue a verifiable certification statement against the homeowner’s listing that includes the certification authority’s signature for others to verify. There is a relationship of trust between the certification authority and the homeowner. All the certification bodies form a consortium to maintain the consortium blockchain. When the owner pays the appropriate number of tokens RentCoin, the certification body can modify the contents of the blockchain with trapdoor information according to the owner’s needs while keeping the block hash value unchanged.


## 4.1.4. Blockchain

It is a consortium blockchain maintained by accounting nodes for publishing the listing information and verifiable authentication claims of the homeowner. Any tenant can read the information on the blockchain. The transactions in each block form the Merkle hash tree of the respective block, where the first level of the hash tree is a new chameleon hash. An accounting node can modify the content of a transaction while keeping the block header unchanged.


## 4.1.5. Accounting Node

This node is a special node in the consortium blockchain where a trusted third-party acts as the accounting node for the consortium chain. It verifies the validity of the signatures of verifiable claims issued by the certification authority. At each time period, the consortium blockchain consisting of certification authorities chooses a leader, which is rotated by the certification authorities. The leader needs to pack valid transactions from the homeowner, generate new blocks, and join them to the consortium blockchain.First, the homeowner sends the encrypted house information to the relevant certification authority according to the demand for rental. Second, the authentication agency decrypts and authenticates the information of the house. It also sends a verifiable claim to the authenticated owner. Finally, the owner sends the encrypted verifiable claims and the rental information of the house to the accounting node of the consortium blockchain. The leader of the consortium chain broadcasts the legitimate transaction to the other accounting nodes after verification. After they verify the signature, the leader adds the rental information to the consortium blockchain as a transaction for tenants to query and search.


## 4.2. Threat Model

We assume that a secure channel exists between the individual nodes. The certification authority strictly enforces the certification statement and authenticates truthfully. There are active and passive adversaries in the system. Passive adversaries obtain transaction data by eavesdropping on homeowners or analyzing leases between homeowners and tenants. Unlike passive adversaries, active adversaries may interrupt lease transactions between homeowners and tenants.In addition, we assume that there are3f+1 accounting nodes in the consortium chain to maintain the blockchain and that there are no more than f malicious nodes in the consortium chain.


## 4.3. Design Goals

Our goal is to achieve privacy and security, information symmetry, transaction fairness, and legal subletting in the rental market. Therefore, our design objectives are shown below.


### 4.3.1. Confidentiality of Property Information

The owner sends the ownership and other information of the house to the verification agency through a secure channel, and no third party can get the encrypted house information in the process, i.e., no agent can get the information of the rental property.


### 4.3.2. Authorized Home Ownership Certification

The certification claim issued by the certification agency must determine the match and authenticity of the homeowner’s identity information and the housing information. It ensures the authenticity of the housing information as well as reduces the information asymmetry between homeowners and tenants.


### 4.3.3. Transaction Security

The rental transactions between landlords and tenants are only accessible to the house owner and dwellers themselves. No counterparty has access to the transaction information between them. There is also no third party to modify the transaction without the consent of the owner and tenant.


### 4.3.4. Privacy

Only the landlord and renter know their private information during the transaction. No third party has access to their private information without their permission.


### 4.3.5. Accountability

The rental contract signed by the leaseholder and landlord is based on a smart contract. They must be responsible for the contract they have signed and cannot break or deny the contents of the contract.


### 4.3.6. Legality of Subletting

If the landlord agrees to the tenant’s subletting of an unexpired property, the house owner uses his or her private key to grant the boarder the legal right to sublet.


## 4.3.1. Confidentiality of Property Information

The owner sends the ownership and other information of the house to the verification agency through a secure channel, and no third party can get the encrypted house information in the process, i.e., no agent can get the information of the rental property.


## 4.3.2. Authorized Home Ownership Certification

The certification claim issued by the certification agency must determine the match and authenticity of the homeowner’s identity information and the housing information. It ensures the authenticity of the housing information as well as reduces the information asymmetry between homeowners and tenants.


## 4.3.3. Transaction Security

The rental transactions between landlords and tenants are only accessible to the house owner and dwellers themselves. No counterparty has access to the transaction information between them. There is also no third party to modify the transaction without the consent of the owner and tenant.


## 4.3.4. Privacy

Only the landlord and renter know their private information during the transaction. No third party has access to their private information without their permission.


## 4.3.5. Accountability

The rental contract signed by the leaseholder and landlord is based on a smart contract. They must be responsible for the contract they have signed and cannot break or deny the contents of the contract.


## 4.3.6. Legality of Subletting

If the landlord agrees to the tenant’s subletting of an unexpired property, the house owner uses his or her private key to grant the boarder the legal right to sublet.


## 5. Proposed Scheme: Rentchain

### 5.1. Details of Our Proposed Scheme

Homeowners generate their own self-sovereign identityID and corresponding public-private key pairspk,sk according to their needs for rental properties, and get a legal verifiable certificate statement through a trusted third-party organization. The owner sends the verifiable statement and ID to the accounting node of the consortium chain for verification. The accounting node publishes the information of rental properties with verifiable statements on the consortium chain for tenants to inquire according to their rental needs. If users in the consortium chain initiate a change request, they need to modify the content in the history block to initiate the voting phase. When more than half of the signatures of users in the consortium chain agree to the modification, the signatures of users who agree to the modification are broadcasted.The user who changes the block is selected according to the distributed random generation (DRG) protocol and the Lagrange interpolation formula. The selected user modifies the content of the history block according to his own trapdoor key, and then broadcasts it to other users after the modification is completed. Only after all other users pass the verification, the changed history blocks are recorded and marked. The user who changes the block is selected according to the distributed random generation (DRG) protocol and the Lagrange interpolation formula. Selected user modifies the content of the history block according to his own trapdoor key and then broadcasts it to other users after the modification is completed. Only after all other users pass the verification, the changed history blocks are recorded and marked.


### 5.2. Rental Housing Information Up-Link Stage

(1)
The homeownerHi uses the RSA public key algorithm to generate his own identity IDHi and the corresponding public key pkHi and private key skHi. Landlords Hi can generate different self-sovereign identity IDs and corresponding public-private key pairs according to their needs for renting out their properties. Tenant Ti uses RSA public key algorithm to generate their own public-private key pair (pkTi, skTi)(2)
The accounting node of the consortium chain (a trusted third-party verifierCi) generates the corresponding public key hkCi and trapdoor private key tkCi based on the new chameleon hash Algorithm 1(1)
The landlord sends the basic information of the title deed, the self-sovereign identityID, and the public key IDHi,pkHi,infHi of the house to be rented to the certification authority for authentication through a secure channel after encryption. The certification authority verifies the information after decrypting it using its own private key. If the information is incorrect, the certification authority rejects the request. Otherwise, the certification authority generates the verifiable statement claim and σHi=SigskCiHIDHi,pkHi,infHi,claim,t1, where t1 is the verification period of the verifiable statement. Then, the certification authority Ci sends the verifiable statement and signature IDHi,pkHi,infHi,claim,σHi to the homeowner Hi through a secure channel. The homeowner needs to pay a certain amount of RentCoin to the certification authority as the certification fee(2)
After receiving a signed and authenticated statement from a certification authority, the owner requests the leader in the consortium chain to add the rental information to the chain. The owner encrypts a verifiable statementEclaim=EncIDCi,claim,t1 using the public key of the leader IDCi and sends it. After receiving the request from the homeowner, the leader first verifies whether the timestamp t1is within the allowed range compared to the current time. If not, the leader rejects the request; or else, the leader decrypts it with its own private key to get the verifiable statement claim(3)
The leader verifies the signature. If the signature is invalid, he rejects the request; contrarily the leader broadcasts the transactions for that period to other accounting nodes. After other accounting nodes verify the signature, the leader packages the signed transactions into blocks to join the consortium blockchainAlgorithm 1: New chameleon hash algorithm.
Input: Security parameterκ;Output: Secret trapdoor keyTK=x1,x2,⋯,xnand public hash key HK=g,h1,h2,⋯,hn;1. Select primep,q,wherep=kq+12. Select the elementg of order q in the multiplicative cyclic group Zp∗3. Select a random valuex1∈Zq∗,x2∈Zq∗,⋯,xn∈Zq∗ as the secret trapdoor key TK=x1,x2,⋯,xn4. Computeh1=gx1,h2=gx2,⋯,hn=gxn, and set public hash key HK=g,h1,h2,⋯,hn;5. returnTK=x1,x2,⋯,xnand HK=g,h1,h2,⋯,hn;Blockchain is a distributed system, which does not build upon a central authority. In our scheme, the consensus of the chosen consensus chain is Practical Byzantine Fault Tolerance (PBFT) [27]. We presuppose that there have 3f+1 accounting nodes in the consortium chain. There is only one leader for a time period, and the leader is rotated by the accounting nodes.At regular intervals, the leader verifies the validity of the signature of the certification statement submitted by the homeowner. Before adding the transactions to the consortium blockchain, the leader broadcasts the results of the validation of the transactions. Only after getting the signatures of other accounting nodes, the leader packages the transactions for that period of time and adds them to the consensus blockchain. In this scenario, the hash of the transactions we use is the new chameleon hash. The new chameleon hash is used in order for the accounting node holding the trapdoor key to change the transaction content of the block on demand, while leaving the hash of the block unchanged. As seen in Figure2, the first level of the Merkle tree is the new chameleon hash h, which is included in the transaction.Figure 2
Block structure with new chameleon hash.


### 5.3. Smart Contract-Based Housing Rental Phase

(1)
Tenants inquire and search for property information in the consensus chain according to their rental needs. If the landlord and tenant reach an agreement on the rental, the rental transaction is to be written into the consensus blockchain. The transaction includes rent, rental time, deposit, penalty for breach of contract, smart contract trigger conditions, and so on(2)
The tenant submits their payment address to the smart contract server and the tenant deposits a certain amount of RentCoin to the payment address hinging on the rent(3)
The landlord and tenant create a specific lease contract for the housing lease and then send the finalized lease contract to the smart contract server. After the corresponding smart contract is generated, it will be sent to the owner as well as tenant for signature. Furthermore, both parties will use their own trapdoor private keys to sign after confirmation(4)
The signed smart contract is sent to the leader of the consortium blockchain, who verifies that the signature is correct and broadcasts the result to the other accounting nodes. After other nodes sign the contract, it is stored in the block. When triggering the smart contract, the automatic execution starts(5)
The process is shown in Figure3 belowFigure 3
Lease contract generation process.Before the smart contract starts to execute, the tenant transfers the deposit and the contracted rent in the form of RentCoin to the payment address, assuming that the tenant transfers RentCoin ofb to the payment address. After the smart contract starts executing, the deposit and the contracted monthly (or several monthly) rent are transferred from the tenant’s payment address to the landlord’s payment address, supposing the monthly rent is b0 and the deposit is b1. After that the first smart contract implement, the remaining RentCoin in the tenant’s payment account is b−b0−b1. Each time the smart contract is hit, the lease is checked for expiration. If it has not expired, the rent continues to be transferred from the tenant’s account to the landlord’s payment account at b0. If the tenant’s lease has not expired and the landlord agrees to the tenant’s subletting, the landlord uses his private key signature to authorize the tenant. Subsequently, the tenant can legally sublet after the landlord’s signature.When the lease between the landlord and tenant expires, the smart contract server generates a record to mark the termination of the smart contract.At the same time, it is published to the consortium blockchain as a transaction and the contract is automatically terminated. Second, if the tenant’s payment account is insufficient to pay the next month’s rent after the smart contract is executedk times and the lease has not expired, i.e., b−kb0−b1<b0 also performs the above operation. Therefore, the tenant must ensure that their payment account has enough to pay the next month’s RentCoin; otherwise, it is treated as a default. The defaulting tenant must pay the landlord a certain amount of default money, which can be deducted from the deposit. Finally, the landlord will return the deposit to the tenant’s payment account after the lease expires normally. After the whole rental transaction is completed, the landlord and the tenant have to pay a certain amount of RentCoin to the consortium chain node as transaction fee. If the house has been rented, the status data of the property information update is written to the blockchain.There is often a shortage of supply during the tenant rental phase, such as a significant increase in the number of rentals during the graduation season. At this time, the number of rented properties will be less than the number of tenants, and there is a noncooperative game among tenants during that period. We observe the healthy development of the housing rental market by solving the Nash equilibrium, through which we can calculate the Nash equilibrium of the housing rental market at different stages. The specific construction and solution process are shown below.LetN=1,2,⋯,n be the set of tenants, ∀i∈t, and let Ti be the set of strategies (the set of listings) of tenant i, which is a nonempty set in Rki, T=∏i=1nTi, when tenant i chooses the listingsti∈Ti, i=1,2,⋯,n, the benefit that tenant i gets is fit1,t2,⋯,tn. ∀i∈N, let i^=N\i,Ti^=∏j≠iTj,fit1,t2,⋯,tn=fiti,ti^, where ti^∈Ti^. If there exists t∗=t1∗,t2∗,⋯,tn∗∈T such that ∀i∈N, with fiti∗,ti^=maxui∈Tifiui,ti^∗, then t∗ at this point is the Nash equilibrium point of this n-player noncooperative game. At the equilibrium point, each tenant cannot make himself or herself more profitable by individually changing his or her chosen listing.∀i∈N, let Ti be a nonempty bounded closed convex set in Rki, T=∏i=1nTi,fi:T⟶R continuous, and ∀ti^∈Ti^,ui⟶fiui,ti^ on Ti to be concave, then the Nash equilibrium point of the noncooperative game must exist. This is because, first, T=∏i=1nTi must be a nonempty bounded closed convex set in Rk, where k=k1+k2+⋯kn. ∀i∈N,∀ti^∈Ti^,Fiti^=ωi∈Ti:fiωi,ti^=maxui∈Tifiui,ti^.First, sincefi is continuous when ti^ is fixed, ui⟶fiui,ti^ is continuous, and Ti is a bounded closed set in Rki, so Fiti^≠∅. Ti is a boundary, then Fiti^ there must be a boundary. Next, note that maxui∈Tifiui,ti^=c, ∀ωim∈Fiti^,ωim⟶ωi, then ωim∈Ti. Since Ti is a closed set, ωi∈Ti. fiωim,ti^=c, and since fi is continuous, fiωi,ti^=c,ωi∈Fiti^,Fiti^ must be a closed set. ∀ωi1,ωi2∈Fiti^,∀ξ∈0,1, as ωi1,ωi2∈Ti, Ti is a convex set, ξωi1+1−ξωi2∈Ti,fiξωi1+1−ξωi2≤c. fiωi1,ti^=fiωi2,ti^=c, when ti^ is fixed, ui⟶fiui,ti^ is concave on Ti. So fiξωi1+1−ξωi2,ti^≥minfiωi1,ti^=fiωi2,ti^=c holds. Therefore, fiωi1,ti^fiξωi1+1−ξωi2,ti^=c,fiξωi1+1−ξωi2≤cξωi1+1−ξωi2∈Fiti^, Fiti^ must be a convex set. ∀i∈N,Fiti^ is a nonempty bounded closed convex set in Rki. Because Ft=∏i=1nFiti^, it must be a nonempty bounded closed convex set in Rk, where k=k1+k2+⋯kn.Finally,∀i∈N, since fiui,ti^ is continuous and Ti is a bounded closed set, ∀ti^∈Ti^ the set-valued map from Giti^=Ti must be continuous. Ti is a bounded closed set, and by the great value theorem [28], the extremal map Fi:Ti^⟶P0Ti must be upper semicontinuous. ∀t∈T, since Ft=∏i=1nFiti^, best response mapping F:T⟶P0T on must be upper semicontinuous. Thus, by Kakutani fixed point theorem [29], there exists t∗∈T such that, t∗∈Ft∗, then t∗ must be a Nash equilibrium point of the noncooperative game. In other words, if we can find the Nash equilibrium point during the peak rental period, we can prove to a certain extent that the housing rental market is healthy; if we cannot find the Nash equilibrium point, we cannot simply infer that the housing rental market is unhealthy, and we need to consider a number of factors.


### 5.4. Initiation of Modification Request Phase

(1)
If the owner needs to modify the content of the transaction due to policy or rent change, he/she needs to submit arequest to the accounting node of the consortium blockchain to change the content of the historical block mto m′. The owner signs the request with his/her private key skHi to get σs, and the leader of the consortium chain broadcasts request,σs to the accounting nodes of the consortium chain that starts the voting phase(2)
After receiving the request, the accounting nodes in the consortium chain sign and broadcast the initiatedrequest if they agree to the modification(3)
After the leader collects signatures from greater than half of the consortium chain’s accounting nodes (assuming that the number of signed users isy>n/2), he broadcasts these y signatures


### 5.5. Select the Change Block User Stage

(1)
Theyconsortium chain accounting nodes participating in the voting are noted as P1,P2,⋯,Py. Each node Pi chooses a random number ρi, and according to y,n verifiable secret sharing shares ρi to other nodes. The sharing value of ρi is recorded as si,1,si,2,⋯,si,n(2)
Each consortium chain’s accounting nodePi verifies the shared values after receiving. The shared values si,1,si,2,⋯,si,n after passing the verification are summed to Si=si,1+si,2+⋯+si,n, broadcasting Si(3)
After each consortium chain accounting node receives at leasty of Si, the value of the random number ρ is calculated by Lagrange interpolation, ρ=ρ1+ρ2+⋯+ρy(4)
Each consortium chain accounting node computes the hash valuehi=Hashρ,IDCi,i∈1,2,⋯,y. The computed y hash values are sorted and the public key IDCs corresponding to the smallest hash value hs is selected as the user Ps who modifies the block


### 5.6. Change the Block Content and Confirm Phase

(1)
After selecting the consortium chain accounting nodePs that modifies the block, Ps uses its own private key skCs to modify the message m of the historical block to m′, and the calculated rs′=m−m′+xsrsxs−1modq. The content of the modified block header becomes m′,r1,⋯,rs′,⋯,rn, i.e. the rest remains the same except that m and rs become m′ and rs′(2)
The nodePs will broadcast m′,r1,⋯,rs′,⋯,rn, the votes of other users on the modification requests, the obtained random numbers ρ and the signatures on these contents(3)
After the other nodes of the consortium chain receive the broadcast, they verify whether the nodePs that modifies the consortium chain block corresponds to the hash value Hashρ,IDCs is the smallest, and use the public key IDCs of the user to verify his signature and the signatures of other users at the voting stage. If all the above verifications pass, then verify the Hashm′,r1,⋯,rs′,⋯,rn and Hashm,r1,⋯,rs,⋯,rn are equal or not. If all of them are verified, the historical blocks after the changes are recorded and marked with all the information broadcast by Ps. The content of the tag contains all the information broadcast by Ps who modifies the consortium chain block(4)
When using trapdoor keys to modify the contents of historical blocks, signed consent from other nodes needs to be obtained. This approach has somewhat curbed the reckless rent inflation by landlords


## 5.1. Details of Our Proposed Scheme

Homeowners generate their own self-sovereign identityID and corresponding public-private key pairspk,sk according to their needs for rental properties, and get a legal verifiable certificate statement through a trusted third-party organization. The owner sends the verifiable statement and ID to the accounting node of the consortium chain for verification. The accounting node publishes the information of rental properties with verifiable statements on the consortium chain for tenants to inquire according to their rental needs. If users in the consortium chain initiate a change request, they need to modify the content in the history block to initiate the voting phase. When more than half of the signatures of users in the consortium chain agree to the modification, the signatures of users who agree to the modification are broadcasted.The user who changes the block is selected according to the distributed random generation (DRG) protocol and the Lagrange interpolation formula. The selected user modifies the content of the history block according to his own trapdoor key, and then broadcasts it to other users after the modification is completed. Only after all other users pass the verification, the changed history blocks are recorded and marked. The user who changes the block is selected according to the distributed random generation (DRG) protocol and the Lagrange interpolation formula. Selected user modifies the content of the history block according to his own trapdoor key and then broadcasts it to other users after the modification is completed. Only after all other users pass the verification, the changed history blocks are recorded and marked.


## 5.2. Rental Housing Information Up-Link Stage

(1)
The homeownerHi uses the RSA public key algorithm to generate his own identity IDHi and the corresponding public key pkHi and private key skHi. Landlords Hi can generate different self-sovereign identity IDs and corresponding public-private key pairs according to their needs for renting out their properties. Tenant Ti uses RSA public key algorithm to generate their own public-private key pair (pkTi, skTi)(2)
The accounting node of the consortium chain (a trusted third-party verifierCi) generates the corresponding public key hkCi and trapdoor private key tkCi based on the new chameleon hash Algorithm 1(1)
The landlord sends the basic information of the title deed, the self-sovereign identityID, and the public key IDHi,pkHi,infHi of the house to be rented to the certification authority for authentication through a secure channel after encryption. The certification authority verifies the information after decrypting it using its own private key. If the information is incorrect, the certification authority rejects the request. Otherwise, the certification authority generates the verifiable statement claim and σHi=SigskCiHIDHi,pkHi,infHi,claim,t1, where t1 is the verification period of the verifiable statement. Then, the certification authority Ci sends the verifiable statement and signature IDHi,pkHi,infHi,claim,σHi to the homeowner Hi through a secure channel. The homeowner needs to pay a certain amount of RentCoin to the certification authority as the certification fee(2)
After receiving a signed and authenticated statement from a certification authority, the owner requests the leader in the consortium chain to add the rental information to the chain. The owner encrypts a verifiable statementEclaim=EncIDCi,claim,t1 using the public key of the leader IDCi and sends it. After receiving the request from the homeowner, the leader first verifies whether the timestamp t1is within the allowed range compared to the current time. If not, the leader rejects the request; or else, the leader decrypts it with its own private key to get the verifiable statement claim(3)
The leader verifies the signature. If the signature is invalid, he rejects the request; contrarily the leader broadcasts the transactions for that period to other accounting nodes. After other accounting nodes verify the signature, the leader packages the signed transactions into blocks to join the consortium blockchainAlgorithm 1: New chameleon hash algorithm.
Input: Security parameterκ;Output: Secret trapdoor keyTK=x1,x2,⋯,xnand public hash key HK=g,h1,h2,⋯,hn;1. Select primep,q,wherep=kq+12. Select the elementg of order q in the multiplicative cyclic group Zp∗3. Select a random valuex1∈Zq∗,x2∈Zq∗,⋯,xn∈Zq∗ as the secret trapdoor key TK=x1,x2,⋯,xn4. Computeh1=gx1,h2=gx2,⋯,hn=gxn, and set public hash key HK=g,h1,h2,⋯,hn;5. returnTK=x1,x2,⋯,xnand HK=g,h1,h2,⋯,hn;Blockchain is a distributed system, which does not build upon a central authority. In our scheme, the consensus of the chosen consensus chain is Practical Byzantine Fault Tolerance (PBFT) [27]. We presuppose that there have 3f+1 accounting nodes in the consortium chain. There is only one leader for a time period, and the leader is rotated by the accounting nodes.At regular intervals, the leader verifies the validity of the signature of the certification statement submitted by the homeowner. Before adding the transactions to the consortium blockchain, the leader broadcasts the results of the validation of the transactions. Only after getting the signatures of other accounting nodes, the leader packages the transactions for that period of time and adds them to the consensus blockchain. In this scenario, the hash of the transactions we use is the new chameleon hash. The new chameleon hash is used in order for the accounting node holding the trapdoor key to change the transaction content of the block on demand, while leaving the hash of the block unchanged. As seen in Figure2, the first level of the Merkle tree is the new chameleon hash h, which is included in the transaction.Figure 2
Block structure with new chameleon hash.


## 5.3. Smart Contract-Based Housing Rental Phase

(1)
Tenants inquire and search for property information in the consensus chain according to their rental needs. If the landlord and tenant reach an agreement on the rental, the rental transaction is to be written into the consensus blockchain. The transaction includes rent, rental time, deposit, penalty for breach of contract, smart contract trigger conditions, and so on(2)
The tenant submits their payment address to the smart contract server and the tenant deposits a certain amount of RentCoin to the payment address hinging on the rent(3)
The landlord and tenant create a specific lease contract for the housing lease and then send the finalized lease contract to the smart contract server. After the corresponding smart contract is generated, it will be sent to the owner as well as tenant for signature. Furthermore, both parties will use their own trapdoor private keys to sign after confirmation(4)
The signed smart contract is sent to the leader of the consortium blockchain, who verifies that the signature is correct and broadcasts the result to the other accounting nodes. After other nodes sign the contract, it is stored in the block. When triggering the smart contract, the automatic execution starts(5)
The process is shown in Figure3 belowFigure 3
Lease contract generation process.Before the smart contract starts to execute, the tenant transfers the deposit and the contracted rent in the form of RentCoin to the payment address, assuming that the tenant transfers RentCoin ofb to the payment address. After the smart contract starts executing, the deposit and the contracted monthly (or several monthly) rent are transferred from the tenant’s payment address to the landlord’s payment address, supposing the monthly rent is b0 and the deposit is b1. After that the first smart contract implement, the remaining RentCoin in the tenant’s payment account is b−b0−b1. Each time the smart contract is hit, the lease is checked for expiration. If it has not expired, the rent continues to be transferred from the tenant’s account to the landlord’s payment account at b0. If the tenant’s lease has not expired and the landlord agrees to the tenant’s subletting, the landlord uses his private key signature to authorize the tenant. Subsequently, the tenant can legally sublet after the landlord’s signature.When the lease between the landlord and tenant expires, the smart contract server generates a record to mark the termination of the smart contract.At the same time, it is published to the consortium blockchain as a transaction and the contract is automatically terminated. Second, if the tenant’s payment account is insufficient to pay the next month’s rent after the smart contract is executedk times and the lease has not expired, i.e., b−kb0−b1<b0 also performs the above operation. Therefore, the tenant must ensure that their payment account has enough to pay the next month’s RentCoin; otherwise, it is treated as a default. The defaulting tenant must pay the landlord a certain amount of default money, which can be deducted from the deposit. Finally, the landlord will return the deposit to the tenant’s payment account after the lease expires normally. After the whole rental transaction is completed, the landlord and the tenant have to pay a certain amount of RentCoin to the consortium chain node as transaction fee. If the house has been rented, the status data of the property information update is written to the blockchain.There is often a shortage of supply during the tenant rental phase, such as a significant increase in the number of rentals during the graduation season. At this time, the number of rented properties will be less than the number of tenants, and there is a noncooperative game among tenants during that period. We observe the healthy development of the housing rental market by solving the Nash equilibrium, through which we can calculate the Nash equilibrium of the housing rental market at different stages. The specific construction and solution process are shown below.LetN=1,2,⋯,n be the set of tenants, ∀i∈t, and let Ti be the set of strategies (the set of listings) of tenant i, which is a nonempty set in Rki, T=∏i=1nTi, when tenant i chooses the listingsti∈Ti, i=1,2,⋯,n, the benefit that tenant i gets is fit1,t2,⋯,tn. ∀i∈N, let i^=N\i,Ti^=∏j≠iTj,fit1,t2,⋯,tn=fiti,ti^, where ti^∈Ti^. If there exists t∗=t1∗,t2∗,⋯,tn∗∈T such that ∀i∈N, with fiti∗,ti^=maxui∈Tifiui,ti^∗, then t∗ at this point is the Nash equilibrium point of this n-player noncooperative game. At the equilibrium point, each tenant cannot make himself or herself more profitable by individually changing his or her chosen listing.∀i∈N, let Ti be a nonempty bounded closed convex set in Rki, T=∏i=1nTi,fi:T⟶R continuous, and ∀ti^∈Ti^,ui⟶fiui,ti^ on Ti to be concave, then the Nash equilibrium point of the noncooperative game must exist. This is because, first, T=∏i=1nTi must be a nonempty bounded closed convex set in Rk, where k=k1+k2+⋯kn. ∀i∈N,∀ti^∈Ti^,Fiti^=ωi∈Ti:fiωi,ti^=maxui∈Tifiui,ti^.First, sincefi is continuous when ti^ is fixed, ui⟶fiui,ti^ is continuous, and Ti is a bounded closed set in Rki, so Fiti^≠∅. Ti is a boundary, then Fiti^ there must be a boundary. Next, note that maxui∈Tifiui,ti^=c, ∀ωim∈Fiti^,ωim⟶ωi, then ωim∈Ti. Since Ti is a closed set, ωi∈Ti. fiωim,ti^=c, and since fi is continuous, fiωi,ti^=c,ωi∈Fiti^,Fiti^ must be a closed set. ∀ωi1,ωi2∈Fiti^,∀ξ∈0,1, as ωi1,ωi2∈Ti, Ti is a convex set, ξωi1+1−ξωi2∈Ti,fiξωi1+1−ξωi2≤c. fiωi1,ti^=fiωi2,ti^=c, when ti^ is fixed, ui⟶fiui,ti^ is concave on Ti. So fiξωi1+1−ξωi2,ti^≥minfiωi1,ti^=fiωi2,ti^=c holds. Therefore, fiωi1,ti^fiξωi1+1−ξωi2,ti^=c,fiξωi1+1−ξωi2≤cξωi1+1−ξωi2∈Fiti^, Fiti^ must be a convex set. ∀i∈N,Fiti^ is a nonempty bounded closed convex set in Rki. Because Ft=∏i=1nFiti^, it must be a nonempty bounded closed convex set in Rk, where k=k1+k2+⋯kn.Finally,∀i∈N, since fiui,ti^ is continuous and Ti is a bounded closed set, ∀ti^∈Ti^ the set-valued map from Giti^=Ti must be continuous. Ti is a bounded closed set, and by the great value theorem [28], the extremal map Fi:Ti^⟶P0Ti must be upper semicontinuous. ∀t∈T, since Ft=∏i=1nFiti^, best response mapping F:T⟶P0T on must be upper semicontinuous. Thus, by Kakutani fixed point theorem [29], there exists t∗∈T such that, t∗∈Ft∗, then t∗ must be a Nash equilibrium point of the noncooperative game. In other words, if we can find the Nash equilibrium point during the peak rental period, we can prove to a certain extent that the housing rental market is healthy; if we cannot find the Nash equilibrium point, we cannot simply infer that the housing rental market is unhealthy, and we need to consider a number of factors.


## 5.4. Initiation of Modification Request Phase

(1)
If the owner needs to modify the content of the transaction due to policy or rent change, he/she needs to submit arequest to the accounting node of the consortium blockchain to change the content of the historical block mto m′. The owner signs the request with his/her private key skHi to get σs, and the leader of the consortium chain broadcasts request,σs to the accounting nodes of the consortium chain that starts the voting phase(2)
After receiving the request, the accounting nodes in the consortium chain sign and broadcast the initiatedrequest if they agree to the modification(3)
After the leader collects signatures from greater than half of the consortium chain’s accounting nodes (assuming that the number of signed users isy>n/2), he broadcasts these y signatures


## 5.5. Select the Change Block User Stage

(1)
Theyconsortium chain accounting nodes participating in the voting are noted as P1,P2,⋯,Py. Each node Pi chooses a random number ρi, and according to y,n verifiable secret sharing shares ρi to other nodes. The sharing value of ρi is recorded as si,1,si,2,⋯,si,n(2)
Each consortium chain’s accounting nodePi verifies the shared values after receiving. The shared values si,1,si,2,⋯,si,n after passing the verification are summed to Si=si,1+si,2+⋯+si,n, broadcasting Si(3)
After each consortium chain accounting node receives at leasty of Si, the value of the random number ρ is calculated by Lagrange interpolation, ρ=ρ1+ρ2+⋯+ρy(4)
Each consortium chain accounting node computes the hash valuehi=Hashρ,IDCi,i∈1,2,⋯,y. The computed y hash values are sorted and the public key IDCs corresponding to the smallest hash value hs is selected as the user Ps who modifies the block


## 5.6. Change the Block Content and Confirm Phase

(1)
After selecting the consortium chain accounting nodePs that modifies the block, Ps uses its own private key skCs to modify the message m of the historical block to m′, and the calculated rs′=m−m′+xsrsxs−1modq. The content of the modified block header becomes m′,r1,⋯,rs′,⋯,rn, i.e. the rest remains the same except that m and rs become m′ and rs′(2)
The nodePs will broadcast m′,r1,⋯,rs′,⋯,rn, the votes of other users on the modification requests, the obtained random numbers ρ and the signatures on these contents(3)
After the other nodes of the consortium chain receive the broadcast, they verify whether the nodePs that modifies the consortium chain block corresponds to the hash value Hashρ,IDCs is the smallest, and use the public key IDCs of the user to verify his signature and the signatures of other users at the voting stage. If all the above verifications pass, then verify the Hashm′,r1,⋯,rs′,⋯,rn and Hashm,r1,⋯,rs,⋯,rn are equal or not. If all of them are verified, the historical blocks after the changes are recorded and marked with all the information broadcast by Ps. The content of the tag contains all the information broadcast by Ps who modifies the consortium chain block(4)
When using trapdoor keys to modify the contents of historical blocks, signed consent from other nodes needs to be obtained. This approach has somewhat curbed the reckless rent inflation by landlords


## 6. Conclusion

Compared with the blockchain-based scheme proposed by Lin et al. to build a housing rental ecosystem [30], we introduce chameleon hashing to give each node of the consortium chain the right to modify historical blocks and use n noncooperative game to detect the health of the housing rental market in terms of undersupply to a certain extent. Both schemes apply blockchain technology to the housing rental market and propose solutions to various problems in the housing rental market from different perspectives, respectively.Our proposal focuses on solving the problems of information asymmetry, illegal subletting, and tenant information leakage in the housing leasing market. The leasing contract based on smart contract enhances the fairness and convenience of transactions in the housing rental market to a certain extent. In the future, we will improve the evaluation and reward mechanism of the scheme as well as enrich the information of rental properties and other issues.



---

*Source: 1137130-2022-03-10.xml*