Security Enhanced Crowdfunding Using Blockchain and Lattice Based Cryptosystem | Research Square window.SnipcartSettings = { analytics: { enabled: false } }; (function() { var accessVector = localStorage.getItem('access_vector') || ''; window.dataLayer = window.dataLayer || []; if (accessVector) { window.dataLayer.push({ user: { profile: { profileInfo: { snid: accessVector } } } }); } })(); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-K279D39R'); Browse Preprints In Review Journals COVID-19 Preprints AJE Video Bytes Research Tools Research Promotion AJE Professional Editing AJE Rubriq About Preprint Platform In Review Editorial Policies Our Team Advisory Board Help Center Sign In Submit a Preprint Cite Share Download PDF Research Article Security Enhanced Crowdfunding Using Blockchain and Lattice Based Cryptosystem K VIDYA, Hussain Imthiaz Hussain, Vishal Celestine, Vishwa Kumar, and 1 more This is a preprint; it has not been peer reviewed by a journal. https://doi.org/ 10.21203/rs.3.rs-2020457/v1 This work is licensed under a CC BY 4.0 License Status: Posted Version 1 posted You are reading this latest preprint version Abstract Crowdfunding is a method of raising funds from a large number of individuals or businesses. Investors can contribute to any project they are interested in and earn if the initiative is successful. Many crowdfunding sites now exist, and they accept large sums of money from investors and contributors and then leave them with bogus promises. Blockchain-based crowdfunding alters the usual approach to company finance. Generally, when people need to acquire funds to start a firm, they must first develop a strategy, statistical surveys, and models, and then offer their ideas to attract people or organisations. Banks, individual investors, and venture capital firms were among the sources of funding. The modern crowdfunding concept is based on three types of on-screen characters: the task initiator who presents the idea or venture to be financed, individuals or investors who invest in the idea, and a platform that connects these two characters to make the venture successful. It can be used to fund a wide range of start-ups and new concepts, such as inventive activities, medical improvements, travel, and social commercial enterprise projects. This work presents a practical implementation of a crowdfunding application that is secured by a lattice-based cryptosystem for encryption of user data and zero-knowledge proof for the identification of application users. Additionally, machine learning has been used for prediction of campaign success for the benefit of fund contributors. Figures Figure 1 Figure 2 Figure 3 Figure 4 Figure 5 Figure 6 Figure 7 Figure 8 Figure 9 Figure 10 Figure 11 Figure 12 Figure 13 Figure 14 Figure 15 Figure 16 Figure 17 Figure 18 Figure 19 Figure 20 Figure 21 Figure 22 Figure 23 1. Introduction Crowd funding is a type of online money-raising approach that began as a way for people to donate a little amount of money to help inventive people support their ventures. Through a middleman or platform, crowdfunding enables customers to invest in cutting-edge businesses. The issue with today’s approach of crowd funding is that investors do not have control over the money they contribute and third-party intermediaries do not guarantee the money people donate to the project. This project offers a decentralised, private, and secure crowd funding network that is built on the blockchain. The main objective of this project is to create smart contracts that enable contributors to efficiently make and reserve funds for the project while also giving investors control over the money they invest. This will enable investors to successfully contribute to any project. 1.1 PROBLEM STATEMENT Crowd fundraising involves a lot of transactions, thus it’s important to handle and record them legally. A smart contract is used as a consequence, which is a transaction protocol that automatically carries out, manages, and records transaction actions on behalf of the project’s developers and investors in line with the agreement. In this project, a method is shown that entails two contracts: one that contains all projects and the other that manages transactions for each project. The main components of any crowdfunding platform are the project manager, funders, suppliers, smart contract, spending request, and voting mechanism. 1.2 PROPOSED STATEMENT Smart contracts will greatly improve security when used to create agreements and apps. In traditional crowd funding, the whole sum of money is in the hands of the management, and the amount utilised by the manager is made without regard for the opinions of investors. As a result, there is no guarantee of security in this circumstance. Every time the management wishes to use the funding amount to purchase something from a vendor, a spending request must first be submitted, which must then be approved by investors. The proposed method creates a smart contract with the whole funding amount within. The money will be automatically paid to the vendor if the contract achieves a majority of votes. This strategy might enhance and strengthen the reliability of the crowd fundraising process. The overall success percentage of projects has fallen in recent years, despite a significant growth in the number of projects and funds given on crowdfunding sites. Additionally, little is known about the workings of crowdfunding platforms and strategies for project success. The project will apply statistical and machine learning approaches for project success prediction to close the gap. 1.3 ADDITIONAL SECURITY IN BLOCKCHAIN Blockchain is not immune to cyberattacks due to a lack of governance and exploitable weaknesses. So, Blockchain offers multiple security measures for the solutions that are built on it. 1.3.1 Kyber Lattice Based Cryptography It is fair and perhaps important to strengthen our systems defences against post-quantum assaults as we come closer to quantum computing (QC) becoming widely used. The difficulty of lattice issues, the majority of which are shortest vector problems, is the foundation of the lattice-based encryption system (SVP). The objective is to output the shortest nonzero vector from a lattice represented by an arbitrary basis. 1.3.2 Whirlpool Hashing The aim of hashing, which is used to transfer input of arbitrary length to a fixed-length output using an algorithm, is authentication. An hashing algorithm is one in which the sender sends the hash value and the hash function to the receiver and the receiver can rehash it and read the message. Whirlpool is a cryptographic hash function which was derived from Advanced Encryption Standard and Whirlpool hash is a block cipher hash function. 1.3.3 Zero Knowledge Proof The ”Zero Knowledge Proof” technology proposes a technique that makes use of cryptographic techniques to enable several parties to confirm the veracity of a piece of information without having to divulge the material that makes it up. A series of approaches known as Zero Knowledge Proof (ZKP) enables the evaluation of a piece of evidence without disclosing the supporting data. The ability to mathematically demonstrate to a verifier that a computational assertion is true without disclosing any data is made possible by a variety of cryptographic techniques. 1.4 WHY BLOCKCHAIN AND MACHINE LEARNING? Unlike traditional crowdfunding, contributors do not have to worry about hollow promises. Smart contracts will manage all transactions, therefore instead of delivering money to a third party, all funds will be held in smart contracts. Project managers and contributors have additional freedom with blockchain, allowing them to make fractional contributions to the project. With the help of machine learning, investors will be able to make data-driven decisions about whether to invest. 1.5 BLOCKCHAIN BACKEND SUPPORT ReactJs is used for the front-end of the system, while NodeJS is used for the back-end. Solidity language is employed for contract development. Using the solc npm package, the contract is converted into ABI code in JSON format. The Web3 provider instance is then used to parse the ABI interface for contract deployment. To connect to the Ethereum network, Infura, a remote node, has been employed. Metamask cryptocurrency wallet should be installed before the system can be used. Users may interact with any decentralised application using the browser plugin Metamask (dApps). A user can send Ethereum to his account after setting up an account with Metamask. Users’ transactions in this system are encouraged by the usage of the Rinkeby network, a proof-of-authority blockchain. Since Rinkeby network is utilized, mining Ether is not an option; rather, a request must be made through the Rinkeby Test Faucet. Using the Etherscan API, users may examine the specifics of their transactions, whether they were successful or not. 1.6 OBJECTIVES This design of our project includes a robust smart contract that will assist with campaign creation and assigning metrics such as name, description and minimum contribution. To create a smart contract that will also feature a spending request creation for efficient use of project funds. To construct the voting process and set it up such that only contributors who have invested in that particular project have the ability to approve or reject the project managers’ requests for expenditures. To set up security measures using ZKP and lattice cryptosystems. To work on a machine learning model that will analyze data points of Kickstarter.com projects and provide prediction on any new campaign hosted on the project website. 2. Literature Survey/related Work A literature survey was done by surveying research papers. The limitations and knowledge gained from the papers will help us to create a better system. It include the limitations of the existing work and briefly explain how our ideas are advantageous over the existing ones. 2.1 EXISTING WORK The following papers have been referred to gain insights into the existing methods of Crowdfunding using blockchain. 2.1.1 Applications of Blockchain in Crowdfunding Zhao Hongjiang et al [ 3 ] presented The Applications of Blockchain Technology in Crowdfunding, proposing the idea of combining Blockchain technology with Crowdfunding which can provide efficiency and ensure security by eliminating other intermediary Crowdfunding platforms. The usage of blockchain technology in crowdfunding might be the foundational technology to address the majority of the apparent difficulties of current crowdfunding contracts over the other technologies. Crowdfunding contracts are conducted online using a variety of technologies. The use of blockchain technology in crowdfunding contracts might offer the much-needed remedy to the problems associated with abuse, trust, and secrecy in the industry. 2.1.2 Blockchain Based Crowdfunding Md Nazmus Saadat et al [ 4 ] proposed a Blockchain based crowdfunding system where the fundraisers will receive money from the blockchain based on the voting approval of the investors. The fundraiser can create the campaign and the investors can contribute to the campaign. In order to specify how the funds raised will be utilised, the fundraisers may also create requests. The donors cast a vote for or against the request, determining whether the costs are appropriated. Money will be paid to the vendors in the form of ether if it is authorised by the majority of supporters. A smart contract is used to do this, and it will handle the ether transaction between fundraisers, investors, and vendors. The system has a network connection to Ethereum. Users’ transactions are encouraged in this system via the use of a proof-of-authority blockchain called the Rinkeby network. 2.1.3 Venturing Crowdfunding Using Smart Contracts Nikhil Yadav et al [ 1 ] proposed Venturing crowdfunding using Smart Contracts in Blockchain, a base paper which speaks about the advantages of integrating crowdfunding technique with blockchain. It first explains about the different types of crowdfunding and then why crowdfunding using Blockchain stands out from the other types of crowdfunding. Crowdfunding is a way of raising money from a large number of individual investors. The investors who invest in a campaign can gain their profit if that campaign gets successful. But still in certain crowdfunding platforms, they receive money from investors and run away with a chunk of money. In order to build trust between the investors and the platforms, a Smart contract is introduced. And the Smart contract automates the transactions which removes the need for a manager to handle this process. Blockchain thus solves the problem of spending more on a campaign as there is no need for any central or trusted authority. Due to the decentralised nature of blockchain, no one can manage smart contracts, which makes them transparent to all users. Each phase of the project may have a different number of expenditure requests created by the campaign owner. Each expenditure proposal can be supported by a majority vote of the investors. Therefore, the developers will receive the funds promised in the expenditure proposal. A spending proposal is approved if it receives the votes of the majority of the donors. If not, the budgetary proposal will have to wait. Thus, a campaign may effectively launch its items when all expenditure requirements have been fulfilled. 2.1.4 Crowd-funding Campaigns With Machine Learning An increasing number of new entrepreneurs use online crowd-funding for funding their start-ups. Different factors have been examined through which campaign success can be measured (pledged amount vs. goal, number of backers), and thus distinct factors and features that determine campaign success. The aim of this work was to define the success factors for crowd-funding campaigns by using artificial intelligence (AI) techniques, such as machine learning which was proposed by Constantine Xipolitopoulos et al [ 7 ]. Kickstarter website is an online platform for crowdfunding and has datasets over thousands of campaigns. The investigated influencing factors were classified into three different categories (descriptive, financial and linguistic). The descriptive category includes data that describe aspects of the campaign itself, such as the length of the campaign’s funding round, the number of updates the campaign posted, the weekday it launched, the category that it was a part of, and the number of comments made on the campaign. Additionally, they have examined two different parameters of success as dependent variables. The Feature extraction process drops the unnecessary features which are not related to the campaign success. The predictor model was found to predict campaign success with high performance. 2.1.5 Long-term Study of Crowdfunding Platform: Predicting Project Success and Fundraising Amount Most of the research papers are based on Kickstarter platform because it is the biggest crowdfunding site. But there is no research paper studying the entire data yet. 2.1.6 Crystals – Kyber CRYSTALS - Kyber, a CCA-secure module-lattice-based KEM that introduces the Kyber Lattice-based Cryptography approach, was suggested by Joppe Bos et al [ 8 ]. Kyber is a collection of post-quantum cryptographic primitives centred on a key-encapsulation mechanism (KEM) that is based on module lattice hardness hypotheses. By using a modified version of the Fujisaki-Okamoto transform, a CCA-secure KEM was built and a public-key encryption strategy that is CPA-secure was presented. The new construction’s key and ciphertext sizes are roughly half that of the old one, the KEM provides CCA rather than just passive security, and the security is based on a more flexible and broad lattice problem. 2.1.7 Noninteractive Zero Knowledge Proof System Zero Knowledge Proof, according to Huixin Wu[ 10 ], is a crucial area of computational complexity theory and cryptography. There is only one message transmitted from the prover to the verifier in the Zero Knowledge Proof (ZKP) system. The method proposed in this work takes use of cryptographic techniques to enable several parties to validate the veracity of a piece of information without having to reveal the data that makes it up. a group of technologies that make it possible to verify information without revealing the supporting evidence. This paper covers and analyses the fundamental ideas of the noninteractive zero knowledge proof system in detail, and it also provides a summary of the research advancements made by this system. 2.2 LIMITATION OF THE EXISTING SYSTEM All of today’s crowd funding transactions depend on a variety of different crowdfunding platforms, each of which needs a sizable sum of money from contributors and investors to fulfil its requirements, which may or may not be satisfactory. Numerous platforms serve as gatekeepers, implementing stringent limitations and guidelines that make it challenging for contributors and investors to have full influence over the project’s success. The promises given to donors are frequently not guaranteed by crowd funding techniques, which can be unjust to the contributors, discourage them from participating in the effort, and complicate project management. When an idea gains traction on crowdfunding platforms, many other entrepreneurs are motivated to produce similar goods, which heightens competition. Many crowd funding platforms do not ensure that the commitments made to donors will be kept, which can be unjust to the contributors, discourage them from participating in the effort, and complicate project management. 3. System Architecture The general architecture of architecture is described in this section. Figure 3.1 depicts the system architecture. The following sections provide an explanation of the architecture’s modules. 3.1 SECURITY ENHANCED BLOCKCHAIN CROWDFUNDING USING LATTICE CRYPTOSYSTEM 3.2 MODULES AND ITS DESCRIPTION The proposed system follows a tightly coupled architecture as represented in the Fig. 3.1 comprising of the following modules. 1. Campaign creation 2. Spending Request Module 3. Voting System Module 4. ML Data Pre-Processing Module 5. ML Pipeline Module with Logistic Regression 6. ML Hyperparameter Tuning Module 3.2.1 Campaign Creation A project manager initiates a new project at the first step by giving the project name, description, and minimal contribution. Then, contributors may browse through all of the active projects on the crowd funding website and choose any project to support with a donation. They must contribute at least the amount that the project manager specified when the project was founded in order to be recognised as contributors. And the project managers can use this money now that it has been added to their wallet. 3.2.2 Spending Request Module If a project manager wishes to use funds provided by investors at this point, they must produce a spending request that specifies how the funds will be used, how much money will be spent overall, and the address of the vendor who will provide the needed materials. 3.2.3 Voting System Module Only contributors who have invested in that particular project may approve or disapprove the project managers’ requests for expenditures since the voting system is set up in that way. The voting process also makes sure that a contributor cannot vote for the same expenditure request twice. Therefore, the money is paid to the vendor so that the user can deliver the utilities requested by the project manager if the expenditure request is approved by more than half of the project’s contributors. 3.2.4 Kyber Lattice System and Whirlpool Hashing Based on the difficulties of resolving the learning-with-errors (LWE) problem across module lattices, Kyber is a secure key encapsulation mechanism (KEM). Similar to AES-128, AES-192, and AES-256, Kyber-512 aims to offer security. Regev’s revolutionary LWE-based encryption method served as the model for Kyber’s idea. Kyber is used to generate a randomness factor that is added to the Whirlpool hashing input. This addition of randomness is commonly referred as the salting process in the Whirlpool hash. It ensures that two users who supply the same data to the blockchain have different hash values in the blockchain. 3.2.5 Private Blockchain Network The private blockchain network is designed to act as a local blockchain for this decentralized application. This blockchain is instantiated using the Blockchain class which is an array of Block class objects. The Block class has data field, timestamp, previous hash and hash as parameters that are needed while creating a Block object. The enhanced security using Kyber lattice system is implemented on this local blockchain. 3.2.6 Vendor Verification Using Zero Knowledge Proof A vendor verification check feature is incorporated in the requests lists page of the campaign to verify the authenticity of the resource providers/vendors. The verification system is designed using Zero Knowledge Proof method and the Poseidon Hashing algorithm. The vendor generates a Proof using his details which are hashed using Poseidon algorithm. This Proof along with the Verifier smart contract is used in marking the vendor as Verified on the Blockchain. The campaign contributors gain confidence in the vendors owing to their authenticity. 3.2.7 ML Data Pre-Processing Module As shown in Fig. 3.4 , the dataset for the machine learning model is obtained from Kickstarter website. The obtained dataset is pre-processed before feeding it to the model. The pre-processing consists of three phases. The first phase is Parsing, the features having date data type such as created on, deadline, launched on are parsed in this phase. The second phase is dropping the unnecessary features, features such as communication, live, suspended project data do not influence the campaign and they are ignored. The third phase is one-hot encoding, that is the categorical type data are one-hot encoded. Thus, the final dataset after pre-processing is used in the machine learning model. 3.2.8 ML Pipeline Module with Logistic Regression As shown in Fig. 3.5 , the feature selection is an important process before training the model, the dataset after pre-processing, which is then processed by the Column Selector and the Feature Selector. The output of the previous process will be columns and features to be used. The CountVectorizer is then used to get the Frequency of usage. Chi square feature selection has been used to select the important features from the given dataset. The output received from the chi square feature selection is used to train the model. 3.2.9 ML Hyperparameter Tuning Module As shown in Fig. 3.6 , the parameter grids with ranges of c and ranges of reduced dim are sent to the GridSearchCV with an estimator, the output is then fit into the pipeline with best hyperparameters and grid cv results are produced. The mean test scores are then obtained from the grid cv results. Finally, the precision, recall and f1- score are calculated. Also the confusion matrix is populated. 4. Implementation 4.1 TOOLS USED The following are the list of tools and libraries used in this project. 4.1.1 Remix Editor Remix Editor is a development environment and testing framework. With Remix, Smart Contracts are compiled and deployed and injected into web applications. 4.1.2 Web3.js Library Web3.js is a pool of libraries which permits us to interact with a on-chain and off-chain remote ethereum nodes, using a HTTP or Inter Process Communication (IPC) connection. The web3 JavaScript library interacts with the Ethereum blockchain. It can retrieve user accounts, send transactions and interact with smart contracts. 4.1.3 Node Js Node.js is a server-side JavaScript run-time environment. Notably, Node.js does not expose a global ”window” object, since it does not run within a browser. Node.js is primarily used for non-blocking, event-driven servers, due to its single-threaded nature. It’s used for traditional web sites and back-end API services, but was designed with real-time, push-based architectures. 4.1.4 Metamask Wallet Provider Metamask works like a connection between the webpages and the Ethereum blockchain. The smart contracts in the blockchain check whether the node in the network can access that data or not. The nodes can be managed by Metamask wallet when a local blockchain network is built. 4.1.5 Next.js Framework On top of Node js, the open-source development framework Next.js enables server-side rendering and the creation of static web pages for React-based web apps. When constructing a server-rendered website using Node js, developers are advised to use Next.js, which is included under ’Recommended Toolchains’ in the React documentation. Next.js is used to expand the capabilities of traditional React apps to include applications rendered on the server side. Traditional React apps render all of their information in the client-side browser. 4.1.6 React Framework React is a front end JS library for developing user interfaces or UI components. React JS helps in building a dynamic and efficient webpages. Especially, while loading the current blockchain network to the webpage. 4.2 SMART CONTRACTS The built private blockchain enables the creation of smart contracts, which are rules for transactions. A smart contract is a self-executing, self-enforcing technology that maintains and implements contractual provisions through blockchain and is regulated by its clear terms and conditions. Simple ”if/when... then.. ” statements that are put into code on a blockchain using Solidity are what smart contracts use to function. When preset requirements have been satisfied and validated, a network of computers carries out the operations (registering an institution, issuing certificates, and sharing certificates). When the transaction is finished, the blockchain is then updated. 4.2.1 Design for Campaign Contract A smart contract is used to manage the attributes of nodes throughout the process of adding a new node to the blockchain. The smart contract is created and published on the network. Construction of a campaign contract: 1. A new user adding a campaign will be prompted to provide a minimum contribution amount before the campaign is given a unique blockchain address. The campaign and the react application communicate with each other using this URL. In addition, msg.sender stores the addresses of all nodes that invoke smart contracts. 2. A campaign instance defines a structure called Request, and the Request is used to store data related to the request made by the campaign manager, such as the description, the minimum contribution amount, the recipient’s address, the number of times the request has been approved, a map of the recipient’s address, and a bool to confirm request approvals. The smart contract uses mapping, a storage structure for key-value pairs. 3. The campaign contract has a contribution feature that enables anyone to make a donation to a campaign as long as they make a larger contribution than the required minimum. 4. The manager can create Requests for his/her campaign where they request ethereum for any particular purpose for their project. The requests can be approved by the contributors of the campaign. The manager can finalize the request once the request has received enough approvals and then the ethereum is sent to the recipient and the contract is explained in algorithm 4.1 4.2.2 Design for Campaign Factory Contract The deployment of the campaign instance to the Rinkeby network is done in the campaign factory contract. The contract is explained in algorithm and the createCampaign function will deploy a new instance of a campaign and will store the resulting address back in an array. A function will return the list of all the campaigns deployed in an array of addresses where all the campaign addresses are stored. 4.2.3 Design for Verifier Contract Verifier contract is engaged in the process of authenticating a vendor in the blockchain. By using the proof values generated by Zero Knowledge Proof system as input and verification key in the contract, it verifies the vendor and marks the vendor as verified and returns a boolean output. The contributors can verify whether the vendor is authenticated or not using this feature and then the contract is explained in algorithm 4.3 4.3 DESIGN OF KYBER LATTICE CRYPTOSYSTEM Kyber is a secure key encapsulation mechanism (KEM) based on the hardness of lattice problems. It is based on the difficulty of solving the learning-with-errors (LWE) issue across module lattices. Kyber-512 aspires to provide security comparable to AES-128, AES-192 and AES-256. Kyber’s concept is inspired by Regev’s groundbreaking LWE-based encryption technique. Kyber processes the plain text in binary format. This module can be broadly classified into four phases. Firstly, the set up phase, the variables are populated with some random values within a specific range. The public key A is generated in this phase. The key generation phase, where the public key B and secret key S are generated using some random variables. The third phase is the Encryption phase, the plain text is encrypted using the public keys A and B to get the Cipher text. The Cipher text is an array of integers. The final phase is the Decryption phase, the secret key S is used to decrypt the Cipher text which will provide the original text. The Number Theoretic Transform (NTT) is a finite-field version of the standard Discrete Fourier Transform (DFT). It basically allows us to execute rapid convolutions on integer sequences without having to worry about round-off issues. Convolutions are useful for multiplying large numbers or long polynomials and Number Theoretic Transform is asymptotically faster than other approaches. Inverse Number Theoretic Transform (INTT) function has been used to convert the variable from the Number Theoretic form to its original state. The compress operation is used after the Inverse Number Theoretic Transformation. Similarly, the decompress operation is applied before the Number Theoretic Transformation. The primary motivation behind the creation of the Compress and Decompress functions was to be able to remove low-order bits from the public key and ciphertext that have little bearing on the chance that the decryption would work correctly, hence lowering the parameters. 4.4 DESIGN OF MACHINE LEARNING MODULE The dataset for the machine learning model is obtained from Kickstarter website. The obtained dataset is pre-processed before feeding it to the model. The pre-processing consists of three phases. The first phase is Parsing, the features having date data type such as created on, deadline, launched on are parsed in this phase. The second phase is dropping the unnecessary features, features such as communication, live, suspended project data do not influence the campaign and they are ignored. The third phase is one-hot encoding, that is the categorical type data are one-hot encoded. Thus, the final dataset after pre-processing is used in the machine learning model (logistic regression). Before training the logistic regression model, the feature selection is a crucial step. The dataset is handled by the Column Selector and the Feature Selector after preprocessing. Columns and features for usage will be the product of the preceding operation. The Frequency of use is then obtained using the CountVectorizer. To choose the most crucial characteristics from the provided dataset, 2(chi square) feature selection method is employed. The model is trained using the results of the 2(chi square) feature selection. The parameter grids with ranges of c and ranges of reduced dim are sent to the GridSearchCV with an estimator, the output is then fit into the pipeline with best hyperparameters and grid cv results are produced. The mean test scores are then obtained from the grid cv results. Finally, the precision, recall and f1- score are calculated. Also, the confusion matrix is populated and this is further explained in algorithm 4.4 4.5 FRAMEWORK SERVICES The framework services comprises of functional modules such as web3 js which is used for loading ethereum blockchain network in the web page. Express JS and React JS are used to build the user interface as the React JS can change the data without reloading the page. Web3 JS module of the ethereum is used to allow the web page to contact the blockchain network. 5. Results And Performance Analysis In this chapter, the results of the modules are presented.The modules are implemented in Solidity programming language, React JS, and Python. 5.1 DEPLOYMENT OF CAMPAIGN FACTORY The deployment of the campaign instance to the Rinkeby network is done in the campaign factory contract. The address of the deployed Campaign Factory contract will be updated in the factory.js file as shown in the below Fig. 5.1 . After updating the address of Campaign factory, Crowd + application can be started by executing the server.js file. The application will be hosted on localhost:3000. 5.2 LIST OF CAMPAIGNS The campaign page is the initial page that appears when the web application is launched. Here, current campaigns are presented, and a new campaign may also be established, as illustrated in Fig. 5.2 . If Metamask is installed in the browser, then all of these procedures can be carried out. 5.3 CREATE CAMPAIGN The page where a transaction must be made in order to start a new campaign will be redirected when the Create Campaign button is clicked, as illustrated in Fig. 5.3 . Whatever adjustments or actions need to be taken, a transaction must be completed, and the change won’t take effect until the transaction has been verified. A confirmed transaction notice is shown in Fig. 5.4 . After the successful creation of a campaign, it will be redirected to the Campaigns list page. 5.4 CAMPAIGN DETAILS This page, which is reached by pressing the View Campaign button on the initial web page, contains information about the campaign, including the manager’s address, the minimum contribution, the number of requests the manager has made, the number of approvers, and the campaign balance. Investors who donate to the campaign can vote on proposals. The campaign display website is shown in Fig. 5.5 below. 5.4.1 Spending Requests When the View Requests button is clicked, the page depicted in Figure 5.6 will be displayed. It comprises of all of the manager’s demands. It also has buttons for approval and completion. When a request receives a sufficient number of votes, the manager will utilise the Finalize button to complete the payment. Approvers use the Approve button to cast their votes. 5.4.2 Add Request A request may be made by entering a description of the spending request, the amount in ether you want to spend, and the address of the receiver to whom the manager wants to transfer the money when the Add Request button is clicked, as illustrated in Fig. 5.7 . (vendor address). 5.4.3 Approve Request The request turns green, suggesting that it may be finalised by the manager, as illustrated in Fig. 5.8 , after receiving enough approvals or majority votes. Additionally, it has an add request button that is only accessible by the manager and is used to make another expenditure request (person who created the campaign). 5.4.4 Finalize Request The whole request turns grey, as shown in Fig. 5.9 , signifying that the request has been closed, and the money is sent to the vendor address that was supplied when the request is finalised. Before and after the request is sent, the amount of money or currency in the wallet is verified to make sure the transaction went through properly. 5.4.5 Vendor’s Wallet Before finalizing the request the vendor’s wallet is empty as shown in Fig. 5.10 Following completion of the request, the vendor receives the funds and updates the wallet balance as seen in Fig. 5.11 . 5.5 RESULTS OF ENHANCED WHIRLPOOL HASHING USING KYBER A new spending request created by the manager is placed in the local blockchain and hashed by the modified Whirlpool Hashing Algorithm using Kyber Lattice Cryptography and the results for this feature are shown in Fig. 5.12 Various statistical tests can be applied to a sequence to attempt to compare and evaluate the sequence to a truly random sequence. Randomness is a probabilistic property; that is, the properties of a random sequence can be characterized and described in terms of probability. The likely outcome of statistical tests, when applied to a truly random sequence, is known a priori and can be described in probabilistic terms. There are an infinite number of possible statistical tests, each assessing the presence or absence of a “pattern” which, if detected, would indicate that the sequence is nonrandom. 5.6 RESULTS OF ZERO KNOWLEDGE PROOF VERIFICATION The components of the Zero Knowledge Proof Verification results are discussed below. 5.6.1 Vendor Verification Vendor enters the proof values generated by zero knowledge proof using their private details and gets verified. 5.6.2 Verification Check The contributor checks the authentication of the vendor by pressing the ’Check’ button. Result as shown in Fig. 5.15 5.7 MACHINE LEARNING RESULTS The components of the machine learning results are detailed below. 5.7.1 Accuracy, Precision and Recall Accuracy, Precision and Recall are shown in Fig. 5.17 5.7.2 Area Under ROC Curve The area under ROC curve is shown in Fig. 5.18 5.8 OBSERVATIONS To utilise blockchain-based crowdsourcing to collect money for a firm, a campaign must first be launched. This campaign will then receive a unique 64-character public key that may be used by investors as an address for donations. The capital can be provided by investors in the form of ether. The donated funds won’t be sent immediately to the person who started the campaign; instead, they’ll stay in the smart contract itself. If the campaign creator wishes to spend money, he or she must submit a spending request that includes the quantity of ether requested as well as the address or vendor’s public key to which the ether should be transmitted in order to obtain the necessary materials. Compared to the current system, this form of crowdsourcing is more faster and more secure. In the current system, the campaign creator has direct control over the donated funds and is free to flee with them. Additionally, it takes a long time for the funds to be transferred to the campaign creator or startup, and a fee will be deducted from the contributions when a third party like Kickstarter is used to raise the necessary funds. Therefore, crowdfunding with blockchain technology is a more innovative and effective way to raise money for entrepreneurs. 6. Conclusion And Future Work 6.1 CONCLUSION The project suggests a smart contract-based solution to enable a secure method of crowd funding by guaranteeing the safety of the money donated by the investors and also ensuring that each and every step taken in the startup with the help of donated money involves investor’s opinion. For example, whenever the campaign creator wants to spend the money, he or she has to make a spending request where the purpose of using the money, to whom the money is being sent (vendor), and the amount needed should be mentioned. The key benefit of employing a smart contract, which is a block chain idea, is that it is resistant to various dangers. Additionally, it offers various characteristics including enhanced dependability and quicker, more effective operating. The web application has been successfully calculated and tested using ”test cases.” It is user-friendly and contains the necessary choices that the user may use to carry out the intended action. To guarantee that the identification of resource providers is handled in a safe way, zero knowledge proof has been developed. Lattice cryptography systems and the security benefit they offer to block chain data have also been studied. 6.2 FUTURE WORK Future works will aim to find a way to enhance the cryptographic algorithm to strenghten the data security and provide a more secure channel for data transmission over systems than the current proposition. This will enable investors to take part in crowd funding in a trusted manner, since the data is end-to-end encrypted. Declarations I confirm that I have read, understand, and agreed to the submission guidelines, policies, and submission declaration of the journal. I confirm that all authors of the manuscript have no conflict of interests to declare. I confirm that the manuscript is the authors' original work and the manuscript has not received prior publication and is not under consideration for publication elsewhere. On behalf of all Co-Authors, I shall bear full responsibility for the submission. I confirm that all authors listed on the title page have contributed significantly to the work, have read the manuscript, attest to the validity and legitimacy of the data and its interpretation, and agree to its submission. I confirm that the paper now submitted is not copied or plagiarized version of some other published work. I declare that I shall not submit the paper for publication in any other Journal or Magazine till the decision is made by journal editors. · If the paper is finally accepted by the journal for publication, I confirm that I will either publish the paper immediately or withdraw it according to withdrawal policies. · I understand that submission of false or incorrect information/undertaking would invite appropriate penal actions as per norms/rules of the journal. Authors' contributions Authors Hussain Imthiaz Hussain 2 , Vishal Celestine G 3 , and Vishwa Kumar S 4 . Conceived of the presented idea. Authors Hussain Imthiaz Hussain 2 , Vishal Celestine G 3 developed the theory and performed the computations. Authors Vishwa Kumar S 4 and Dr. K. Vidya 1 and V.Noel Jeygar Robert 5 verified the analytical methods. Authors Dr. K. Vidya 1 and V.Noel Jeygar Robert 5 to investigate and supervised the findings of this work. All authors discussed the results and contributed to the final manuscript. Funding This research received no specific grant from any funding agency in the public, commercial, or not-for-profit sectors. References Constantine Xipolitopoulos, Maria Nefeli Nikiforos, Maria Malakopoulou, and Adamantia Pateli. Success factors for crowd-funding campaigns with machine learning techniques. 09 2020. Firmansyah Ashari. Smart contract and blockchain for crowdfunding platform. International Journal of Advanced Trends in Computer Science and Engineering , 9:3036–3041, 06 2020. Hasnan Baber. Blockchain-Based Crowdfunding , pages 117–130. 01 2020. Hongjiang Zhao and Cephas Coffie. The applications of blockchain technology in crowdfunding contract. SSRN Electronic Journal , 01 2018. Huixin Wu and Feng Wang. A survey of noninteractive zero knowledge proof system and its applications. The Scientific World Journal , 2014, 2014. Jens Groth. Efficient zero-knowledge arguments from two-tiered homomorphic commitments. In Dong Hoon Lee and Xiaoyun Wang, editors, Advances in Cryptology – ASIACRYPT 2011 , pages 431–448, Berlin, Heidelberg, 2011. Springer Berlin Heidelberg. Joppe Bos, Leo Ducas, Eike Kiltz, T Lepoint, Vadim Lyubashevsky, John M. Schanck, Peter Schwabe, Gregor Seiler, and Damien Stehle. Crystals - kyber: A cca-secure module-lattice-based kem. In 2018 IEEE European Symposium on Security and Privacy (EuroSP) , pages 353–367, 2018. Lorenzo Grassi, Dmitry Khovratovich, Christian Rechberger, Arnab Roy, and Markus Schofnegger. Poseidon: A new hash function for zero-knowledge proof systems. In USENIX Security Symposium , 2021. Md Saadat, Syed Halim, Husna Osman, Rasheed Nassr, and Megat Zuhairi. Blockchain based crowdfunding systems. Indonesian Journal of Electrical Engineering and Computer Science , 15:409, 07 2019. Nihit Desai, Raghav Gupta, and Karen Truong. Plead or pitch ? the role of language in kickstarter project success. 2015. Nikhil Yadav and Sarasvathi V. Venturing crowdfunding using smart contracts in blockchain. In 2020 Third International Conference on Smart Systems and Inventive Technology (ICSSIT) , pages 192–197, 2020. P. Kitsos and O. Koufopavlou. Whirlpool hash function: architecture and vlsi implementation. In 2004 IEEE International Symposium on Circuits and Systems (IEEE Cat. No.04CH37512) , volume 2, pages II–893, 2004. Pawan Pradhan, Sayan Rakshit, and Sujoy Datta. Lattice based cryptography : Its applications, areas of interest future scope. pages 988–993, 03 2019. Roberto Maria Avanzi, Joppe W. Bos, Le´o Ducas, Eike Kiltz, Tancre`de Lepoint, Vadim Lyubashevsky, John M. Schanck, Peter Schwabe, Gregor Seiler, and Damien Stehle´. Crystals-kyber algorithm specifications and supporting documentation. 2017. Sushanth Kumar Reddy Kura Trupthi M. Crowdfunding using blockchain. International Journal of Advanced Science and Technology , 29(1):932 – 945, Jan. 2020. Viren Patil, Vasvi Gupta, and Rohini Sarode. Blockchain-based crowdfunding application. In 2021 Fifth International Conference on I-SMAC (IoT in Social, Mobile, Analytics and Cloud) (I-SMAC) , pages 1546–1553, 2021. Additional Declarations No competing interests reported. Cite Share Download PDF Status: Posted Version 1 posted You are reading this latest preprint version Research Square lets you share your work early, gain feedback from the community, and start making changes to your manuscript prior to peer review in a journal. As a division of Research Square Company, we’re committed to making research communication faster, fairer, and more useful. We do this by developing innovative software and high quality services for the global research community. Our growing team is made up of researchers and industry professionals working together to solve the most critical problems facing scientific publishing. Also discoverable on Platform About Our Team In Review Editorial Policies Advisory Board Help Center Resources Author Services Accessibility API Access RSS feed Manage Cookie Preferences © Research Square 2026 | ISSN 2693-5015 (online) Privacy Policy Terms of Service Do Not Sell My Personal Information {"props":{"pageProps":{"initialData":{"identity":"rs-2020457","acceptedTermsAndConditions":true,"allowDirectSubmit":true,"archivedVersions":[],"articleType":"Research Article","associatedPublications":[],"authors":[{"id":133695696,"identity":"20c091e9-b628-47a7-b087-f85ec788e8a0","order_by":0,"name":"K VIDYA","email":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyAQMAAABI0h/eAAAABlBMVEX///8AAABVwtN+AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAyUlEQVRIiWNgGAWjYDACZgYDBoYDNiAGaVrSQAzGBiBfghhNIC2HQQwitRgcZ94m8ePMeXmD4+zPHzDusKkjrOUwW5lkz43bhhsO8xg2MJ5JI2yLZDOPmQTPh9uMQC2MDYxth4nTIvnnwzn7DYfZHwK1/CeshZ+Zx0ya58aBxA2HGYAOaztAjBa2YmuZM8nJM4F+mZHYlizZQEgLG//hjTffHLOz7Tt//MGHj212/ARtAQIWhFsSiFEPBMwfiFQ4CkbBKBgFIxUAAOmePGeZZHztAAAAAElFTkSuQmCC","orcid":"","institution":"Anna University","correspondingAuthor":true,"submittingAuthor":false,"prefix":"","firstName":"K","middleName":"","lastName":"VIDYA","suffix":""},{"id":133695698,"identity":"11f8d672-768b-4b3e-8781-141475eafaf4","order_by":1,"name":"Hussain Imthiaz Hussain","email":"","orcid":"","institution":"Anna University","correspondingAuthor":false,"submittingAuthor":false,"prefix":"","firstName":"Hussain","middleName":"Imthiaz","lastName":"Hussain","suffix":""},{"id":133695700,"identity":"8ca30de7-f0b7-4b79-9046-e4cf9480ea5a","order_by":2,"name":"Vishal Celestine","email":"","orcid":"","institution":"Anna University","correspondingAuthor":false,"submittingAuthor":false,"prefix":"","firstName":"Vishal","middleName":"","lastName":"Celestine","suffix":""},{"id":133695702,"identity":"ff1563e8-b601-4add-b577-f50158a7ff62","order_by":3,"name":"Vishwa Kumar","email":"","orcid":"","institution":"Anna University","correspondingAuthor":false,"submittingAuthor":false,"prefix":"","firstName":"Vishwa","middleName":"","lastName":"Kumar","suffix":""},{"id":133695704,"identity":"78cd9667-97f0-4eaa-acf5-ab29416f5d28","order_by":4,"name":"V NOEL JEYGAR ROBERT","email":"","orcid":"","institution":"Vellore Institute of Technology University","correspondingAuthor":false,"submittingAuthor":false,"prefix":"","firstName":"V","middleName":"NOEL JEYGAR","lastName":"ROBERT","suffix":""}],"badges":[],"createdAt":"2022-09-01 06:59:31","currentVersionCode":1,"declarations":"","doi":"10.21203/rs.3.rs-2020457/v1","doiUrl":"https://doi.org/10.21203/rs.3.rs-2020457/v1","draftVersion":[],"editorialEvents":[],"editorialNote":"","failedWorkflow":false,"files":[{"id":26216326,"identity":"7a9facaf-2a73-4cfc-b0de-87ef9d329d09","added_by":"auto","created_at":"2022-09-08 16:51:03","extension":"png","order_by":1,"title":"Figure 1","display":"","copyAsset":false,"role":"figure","size":646927,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 3.1: Security Enhanced Blockchain Crowdfunding using Lattice Cryptosystem\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image001.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/6262a9517a8c2700b9fc145e.png"},{"id":26215791,"identity":"09b8a456-4fe9-4474-a15a-60457f651a7a","added_by":"auto","created_at":"2022-09-08 16:46:02","extension":"png","order_by":2,"title":"Figure 2","display":"","copyAsset":false,"role":"figure","size":34615,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 3.2: Salting Process\u003c/p\u003e","description":"","filename":"image002.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/9a8e828f1778b78247522992.png"},{"id":26217175,"identity":"eed2e3c6-5985-430e-8849-9106a6445d98","added_by":"auto","created_at":"2022-09-08 16:56:03","extension":"png","order_by":3,"title":"Figure 3","display":"","copyAsset":false,"role":"figure","size":233336,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 3.3: Zero Knowledge Proof Architecture\u003c/p\u003e","description":"","filename":"image003.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/ec1dcec791b19a47cc6cb6f6.png"},{"id":26215788,"identity":"d0042b08-7bfc-4e91-a1f5-6e4d1c0078fc","added_by":"auto","created_at":"2022-09-08 16:46:02","extension":"png","order_by":4,"title":"Figure 4","display":"","copyAsset":false,"role":"figure","size":128288,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 3.4: Input-Process-Output for Data Pre-Processing\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image004.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/89e402884a02a09439641a96.png"},{"id":26215812,"identity":"1bce6c47-37dd-4eed-b1b3-f47163ad2623","added_by":"auto","created_at":"2022-09-08 16:46:04","extension":"png","order_by":5,"title":"Figure 5","display":"","copyAsset":false,"role":"figure","size":129066,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 3.5: Input-Process-Output for Pipeline Module\u003c/p\u003e","description":"","filename":"image005.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/6bfdceb2b7d76f04578dda3b.png"},{"id":26216321,"identity":"f1693a48-2b78-49f6-bece-fdb0c6abbc02","added_by":"auto","created_at":"2022-09-08 16:51:02","extension":"png","order_by":6,"title":"Figure 6","display":"","copyAsset":false,"role":"figure","size":124505,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 3.6: Input-Process-Output for Hyperparameter Tuning\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image006.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/d8479d887ba91fc90a3a9d5d.png"},{"id":26215792,"identity":"ff401434-e285-4b3e-bbdc-3e2249ee6b0c","added_by":"auto","created_at":"2022-09-08 16:46:03","extension":"png","order_by":7,"title":"Figure 7","display":"","copyAsset":false,"role":"figure","size":422143,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.1: Deployed instance of Campaign factory\u003c/p\u003e","description":"","filename":"image007.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/b9dfbe077ee3c766c7d88088.png"},{"id":26215798,"identity":"42aaccc3-f708-4b5f-a18a-4d5d92f5a3ce","added_by":"auto","created_at":"2022-09-08 16:46:03","extension":"png","order_by":8,"title":"Figure 8","display":"","copyAsset":false,"role":"figure","size":158582,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.2: List of campaigns web page\u003c/p\u003e","description":"","filename":"image008.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/3f6b7ed7c8d1af3262f09824.png"},{"id":26215790,"identity":"2ea1f9ab-9ef1-4dad-8899-a9fd90e956bb","added_by":"auto","created_at":"2022-09-08 16:46:02","extension":"png","order_by":9,"title":"Figure 9","display":"","copyAsset":false,"role":"figure","size":276584,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.3: Campaign creation web page\u003c/p\u003e","description":"","filename":"image009.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/b64fccb6e7c95575b4977e38.png"},{"id":26216320,"identity":"3701a1bb-c614-4a1e-9284-19a48b501dc6","added_by":"auto","created_at":"2022-09-08 16:51:02","extension":"png","order_by":10,"title":"Figure 10","display":"","copyAsset":false,"role":"figure","size":96597,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 5.4: Metamask Transaction confirmation\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image010.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/c3a270abba2de27e00b31fad.png"},{"id":26215796,"identity":"f8430479-ff2e-44ff-a63a-95e2e4264912","added_by":"auto","created_at":"2022-09-08 16:46:03","extension":"png","order_by":11,"title":"Figure 11","display":"","copyAsset":false,"role":"figure","size":312600,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.5: Campaign Show web page\u003c/p\u003e","description":"","filename":"image011.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/176a01474f4600132aa15924.png"},{"id":26215799,"identity":"0c076461-39b3-4b8b-99ac-0fd185dd9f38","added_by":"auto","created_at":"2022-09-08 16:46:03","extension":"png","order_by":12,"title":"Figure 12","display":"","copyAsset":false,"role":"figure","size":201797,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 5.6: View Requests web page\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image012.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/68e58709fe44d9d5b3255b90.png"},{"id":26216325,"identity":"d8cffdc9-5372-423b-acda-3bade867b87f","added_by":"auto","created_at":"2022-09-08 16:51:03","extension":"png","order_by":13,"title":"Figure 13","display":"","copyAsset":false,"role":"figure","size":298111,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.7: Create a Request web page\u003c/p\u003e","description":"","filename":"image013.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/8766d182a1d938e708bb1f45.png"},{"id":26216327,"identity":"6b6ead52-2013-4a22-94d7-5d27cca75f26","added_by":"auto","created_at":"2022-09-08 16:51:04","extension":"png","order_by":14,"title":"Figure 14","display":"","copyAsset":false,"role":"figure","size":287701,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.8: After approving a request\u003c/p\u003e","description":"","filename":"image014.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/c1a58a208b85009e028018d8.png"},{"id":26216328,"identity":"83e39aff-1d2f-4db8-898f-7463430eaac6","added_by":"auto","created_at":"2022-09-08 16:51:04","extension":"png","order_by":15,"title":"Figure 15","display":"","copyAsset":false,"role":"figure","size":223292,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 5.9: After finalizing a request\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image015.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/7c6dca609ef3290809ee162c.png"},{"id":26218276,"identity":"1095f647-5e92-4ebd-aafb-514759d3a064","added_by":"auto","created_at":"2022-09-08 17:01:03","extension":"png","order_by":16,"title":"Figure 16","display":"","copyAsset":false,"role":"figure","size":128178,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.10: Vendor’s wallet before the transaction\u003c/p\u003e","description":"","filename":"image016.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/1b656b64af939bbd21ea1dd0.png"},{"id":26215808,"identity":"1a619862-9b76-4b64-9e69-99a19015df0e","added_by":"auto","created_at":"2022-09-08 16:46:04","extension":"png","order_by":17,"title":"Figure 17","display":"","copyAsset":false,"role":"figure","size":124074,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.11: Vendor’s wallet after the transaction\u003c/p\u003e","description":"","filename":"image017.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/083d19154c0009d4628ed634.png"},{"id":26215800,"identity":"06d4322f-f731-49fb-b25e-0690441220a5","added_by":"auto","created_at":"2022-09-08 16:46:03","extension":"png","order_by":18,"title":"Figure 18","display":"","copyAsset":false,"role":"figure","size":655794,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.12: Private Blockchain hashed using Whirlpool and Kyber Algorithms\u003c/p\u003e","description":"","filename":"image018.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/726e3a02b3bced8bae888e98.png"},{"id":26216322,"identity":"3c830313-809a-48fc-a0b3-41c9e43289ec","added_by":"auto","created_at":"2022-09-08 16:51:03","extension":"png","order_by":19,"title":"Figure 19","display":"","copyAsset":false,"role":"figure","size":77768,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 5.13: Randomness Verification\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image019.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/d43704441ac85df08917affb.png"},{"id":26215807,"identity":"0810419f-4c45-420c-99bb-5227f6cad1cf","added_by":"auto","created_at":"2022-09-08 16:46:03","extension":"png","order_by":20,"title":"Figure 20","display":"","copyAsset":false,"role":"figure","size":275308,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.14: Zero Knowledge Proof Verification\u003c/p\u003e","description":"","filename":"image020.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/8270c335951ac51e91926cd0.png"},{"id":26215803,"identity":"dd7db974-f151-4f64-9219-a3fd300b56e9","added_by":"auto","created_at":"2022-09-08 16:46:03","extension":"png","order_by":21,"title":"Figure 21","display":"","copyAsset":false,"role":"figure","size":169900,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 5.15: Verification Check\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"image021.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/f14157915ad53dedcc2ee506.png"},{"id":26216361,"identity":"0f8c88e6-72f6-4527-a964-9cd4dbfe9596","added_by":"auto","created_at":"2022-09-08 16:51:05","extension":"png","order_by":22,"title":"Figure 22","display":"","copyAsset":false,"role":"figure","size":124785,"visible":true,"origin":"","legend":"\u003cp\u003eFigure 5.16: Accuracy, Precision and Recall\u003c/p\u003e","description":"","filename":"22.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/025d3577e9db9c30ece20c60.png"},{"id":26216359,"identity":"fc72f1d3-24d9-4caa-83a0-148f75079e91","added_by":"auto","created_at":"2022-09-08 16:51:04","extension":"png","order_by":23,"title":"Figure 23","display":"","copyAsset":false,"role":"figure","size":183398,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eFigure 5.17: Area under ROC curve\u003c/strong\u003e\u003c/p\u003e","description":"","filename":"23.png","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/37cf5605c65e83d683050caa.png"},{"id":31904081,"identity":"e264b6cc-1100-4b54-b6fa-14fe45aeb8b9","added_by":"auto","created_at":"2023-01-21 22:14:35","extension":"pdf","order_by":0,"title":"","display":"","copyAsset":false,"role":"manuscript-pdf","size":5347979,"visible":true,"origin":"","legend":"","description":"","filename":"manuscript.pdf","url":"https://assets-eu.researchsquare.com/files/rs-2020457/v1/8f378b05-67f2-49ff-a61c-5aac7aad024a.pdf"}],"financialInterests":"No competing interests reported.","formattedTitle":"\u003cp\u003eSecurity Enhanced Crowdfunding Using Blockchain and Lattice Based Cryptosystem\u003c/p\u003e","fulltext":[{"header":"1. Introduction","content":"\u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eCrowd funding is a type of online money-raising approach that began as a way for people to donate a little amount of money to help inventive people support their ventures. Through a middleman or platform, crowdfunding enables customers to invest in cutting-edge businesses. The issue with today\u0026rsquo;s approach of crowd funding is that investors do not have control over the money they contribute and third-party intermediaries do not guarantee the money people donate to the project.\u003c/p\u003e\n \u003cp\u003eThis project offers a decentralised, private, and secure crowd funding network that is built on the blockchain. The main objective of this project is to create smart contracts that enable contributors to efficiently make and reserve funds for the project while also giving investors control over the money they invest. This will enable investors to successfully contribute to any project.\u003c/p\u003e\n\u003c/div\u003e\n\u003ch2\u003e1.1 PROBLEM STATEMENT\u003c/h2\u003e\n\u003cp\u003eCrowd fundraising involves a lot of transactions, thus it\u0026rsquo;s important to handle and record them legally. A smart contract is used as a consequence, which is a transaction protocol that automatically carries out, manages, and records transaction actions on behalf of the project\u0026rsquo;s developers and investors in line with the agreement. In this project, a method is shown that entails two contracts: one that contains all projects and the other that manages transactions for each project. The main components of any crowdfunding platform are the project manager, funders, suppliers, smart contract, spending request, and voting mechanism.\u003c/p\u003e\n\u003cdiv class=\"Section2\" id=\"Sec3\"\u003e\n \u003ch2\u003e1.2 PROPOSED STATEMENT\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eSmart contracts will greatly improve security when used to create agreements and apps. In traditional crowd funding, the whole sum of money is in the hands of the management, and the amount utilised by the manager is made without regard for the opinions of investors. As a result, there is no guarantee of security in this circumstance. Every time the management wishes to use the funding amount to purchase something from a vendor, a spending request must first be submitted, which must then be approved by investors. The proposed method creates a smart contract with the whole funding amount within. The money will be automatically paid to the vendor if the contract achieves a majority of votes. This strategy might enhance and strengthen the reliability of the crowd fundraising process.\u003c/p\u003e\n \u003cp\u003eThe overall success percentage of projects has fallen in recent years, despite a significant growth in the number of projects and funds given on crowdfunding sites. Additionally, little is known about the workings of crowdfunding platforms and strategies for project success. The project will apply statistical and machine learning approaches for project success prediction to close the gap.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec4\"\u003e\n \u003ch2\u003e1.3 ADDITIONAL SECURITY IN BLOCKCHAIN\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eBlockchain is not immune to cyberattacks due to a lack of governance and exploitable weaknesses. So, Blockchain offers multiple security measures for the solutions that are built on it.\u003c/p\u003e\n \u003c/div\u003e\n \u003ch2\u003e1.3.1 Kyber Lattice Based Cryptography\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eIt is fair and perhaps important to strengthen our systems defences against post-quantum assaults as we come closer to quantum computing (QC) becoming widely used. The difficulty of lattice issues, the majority of which are shortest vector problems, is the foundation of the lattice-based encryption system (SVP). The objective is to output the shortest nonzero vector from a lattice represented by an arbitrary basis.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec6\"\u003e\n \u003ch2\u003e1.3.2 Whirlpool Hashing\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe aim of hashing, which is used to transfer input of arbitrary length to a fixed-length output using an algorithm, is authentication. An hashing algorithm is one in which the sender sends the hash value and the hash function to the receiver and the receiver can rehash it and read the message. Whirlpool is a cryptographic hash function which was derived from Advanced Encryption Standard and Whirlpool hash is a block cipher hash function.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec7\"\u003e\n \u003ch2\u003e1.3.3 Zero Knowledge Proof\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe \u0026rdquo;Zero Knowledge Proof\u0026rdquo; technology proposes a technique that makes use of cryptographic techniques to enable several parties to confirm the veracity of a piece of information without having to divulge the material that makes it up. A series of approaches known as Zero Knowledge Proof (ZKP) enables the evaluation of a piece of evidence without disclosing the supporting data. The ability to mathematically demonstrate to a verifier that a computational assertion is true without disclosing any data is made possible by a variety of cryptographic techniques.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec8\"\u003e\n \u003ch2\u003e1.4 WHY BLOCKCHAIN AND MACHINE LEARNING?\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eUnlike traditional crowdfunding, contributors do not have to worry about hollow promises.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eSmart contracts will manage all transactions, therefore instead of delivering money to a third party, all funds will be held in smart contracts.\u003c/p\u003e\n \u003cp\u003eProject managers and contributors have additional freedom with blockchain, allowing them to make fractional contributions to the project.\u003c/p\u003e\n \u003cp\u003eWith the help of machine learning, investors will be able to make data-driven decisions about whether to invest.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec9\"\u003e\n \u003ch2\u003e1.5 BLOCKCHAIN BACKEND SUPPORT\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eReactJs is used for the front-end of the system, while NodeJS is used for the back-end. Solidity language is employed for contract development. Using the solc npm package, the contract is converted into ABI code in JSON format. The Web3 provider instance is then used to parse the ABI interface for contract deployment. To connect to the Ethereum network, Infura, a remote node, has been employed. Metamask cryptocurrency wallet should be installed before the system can be used.\u003c/p\u003e\n \u003cp\u003eUsers may interact with any decentralised application using the browser plugin Metamask (dApps). A user can send Ethereum to his account after setting up an account with Metamask. Users\u0026rsquo; transactions in this system are encouraged by the usage of the Rinkeby network, a proof-of-authority blockchain. Since Rinkeby network is utilized, mining Ether is not an option; rather, a request must be made through the Rinkeby Test Faucet. Using the Etherscan API, users may examine the specifics of their transactions, whether they were successful or not.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec10\"\u003e\n \u003ch2\u003e1.6 OBJECTIVES\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThis design of our project includes a robust smart contract that will assist with campaign creation and assigning metrics such as name, description and minimum contribution.\u003c/p\u003e\n \u003cp\u003eTo create a smart contract that will also feature a spending request creation for efficient use of project funds.\u003c/p\u003e\n \u003cp\u003eTo construct the voting process and set it up such that only contributors who have invested in that particular project have the ability to approve or reject the project managers\u0026rsquo; requests for expenditures.\u003c/p\u003e\n \u003cp\u003eTo set up security measures using ZKP and lattice cryptosystems.\u003c/p\u003e\n \u003cp\u003eTo work on a machine learning model that will analyze data points of Kickstarter.com projects and provide prediction on any new campaign hosted on the project website.\u003c/p\u003e\n \u003c/div\u003e\u003cspan\u003e\u0026nbsp;\u003c/span\u003e\n\u003c/div\u003e\n"},{"header":"2. Literature Survey/related Work","content":"\u003cdiv class=\"Section2\"\u003e\n \u003cp\u003eA literature survey was done by surveying research papers. The limitations and knowledge gained from the papers will help us to create a better system. It include the limitations of the existing work and briefly explain how our ideas are advantageous over the existing ones.\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\"\u003e\n \u003ch2\u003e2.1 EXISTING WORK\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe following papers have been referred to gain insights into the existing methods of Crowdfunding using blockchain.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\"\u003e\n \u003ch2\u003e2.1.1 Applications of Blockchain in Crowdfunding\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eZhao Hongjiang et al [\u003cspan class=\"CitationRef\"\u003e3\u003c/span\u003e] presented The Applications of Blockchain Technology in Crowdfunding, proposing the idea of combining Blockchain technology with Crowdfunding which can provide efficiency and ensure security by eliminating other intermediary Crowdfunding platforms. The usage of blockchain technology\u003c/p\u003e\n \u003cp\u003ein crowdfunding might be the foundational technology to address the majority of the apparent difficulties of current crowdfunding contracts over the other technologies. Crowdfunding contracts are conducted online using a variety of technologies. The use of blockchain technology in crowdfunding contracts might offer the much-needed remedy to the problems associated with abuse, trust, and secrecy in the industry.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\"\u003e\n \u003ch2\u003e2.1.2 Blockchain Based Crowdfunding\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eMd Nazmus Saadat et al [\u003cspan class=\"CitationRef\"\u003e4\u003c/span\u003e] proposed a Blockchain based crowdfunding system where the fundraisers will receive money from the blockchain based on the voting approval of the investors. The fundraiser can create the campaign and the investors can contribute to the campaign. In order to specify how the funds raised will be utilised, the fundraisers may also create requests. The donors cast a vote for or against the request, determining whether the costs are appropriated. Money will be paid to the vendors in the form of ether if it is authorised by the majority of supporters. A smart contract is used to do this, and it will handle the ether transaction between fundraisers, investors, and vendors. The system has a network connection to Ethereum. Users\u0026rsquo; transactions are encouraged in this system via the use of a proof-of-authority blockchain called the Rinkeby network.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\"\u003e\n \u003ch2\u003e2.1.3 Venturing Crowdfunding Using Smart Contracts\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eNikhil Yadav et al [\u003cspan class=\"CitationRef\"\u003e1\u003c/span\u003e] proposed Venturing crowdfunding using Smart Contracts in Blockchain, a base paper which speaks about the advantages of integrating crowdfunding technique with blockchain. It first explains about the different types of crowdfunding and then why crowdfunding using Blockchain stands out from the other types of crowdfunding. Crowdfunding is a way of raising money from a large number of individual investors. The investors who invest in a campaign can gain their profit if that campaign gets successful. But still in certain crowdfunding platforms, they receive money from investors and run away with a chunk of money. In order to build trust between the investors and the platforms, a Smart contract is introduced. And the Smart contract automates the transactions which removes the need for a manager to handle this process. Blockchain thus solves the problem of spending more on a campaign as there is no need for any central or trusted authority. Due to the decentralised nature of blockchain, no one can manage smart contracts, which makes them transparent to all users. Each phase of the project may have a different number of expenditure requests created by the campaign owner. Each expenditure proposal can be supported by a majority vote of the investors. Therefore, the developers will receive the funds promised in the expenditure proposal. A spending proposal is approved if it receives the votes of the majority of the donors. If not, the budgetary proposal will have to wait. Thus, a campaign may effectively launch its items when all expenditure requirements have been fulfilled.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\"\u003e\n \u003ch2\u003e2.1.4 Crowd-funding Campaigns With Machine Learning\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eAn increasing number of new entrepreneurs use online crowd-funding for funding their start-ups. Different factors have been examined through which campaign success can be measured (pledged amount vs. goal, number of backers), and thus distinct factors and features that determine campaign success. The aim of this work was to define the success factors for crowd-funding campaigns by using artificial intelligence (AI) techniques, such as machine learning which was proposed by Constantine Xipolitopoulos et al [\u003cspan class=\"CitationRef\"\u003e7\u003c/span\u003e]. Kickstarter website is an online platform for crowdfunding and has datasets over thousands of campaigns. The investigated influencing factors were classified into three different categories (descriptive, financial and linguistic). The descriptive category includes data that describe aspects of the campaign itself, such as the length of the campaign\u0026rsquo;s funding round, the number of updates the campaign posted, the weekday it launched, the category that it was a part of, and the number of comments made on the campaign. Additionally, they have examined two different parameters of success as dependent variables. The Feature extraction process drops the unnecessary features which are not related to the campaign success. The predictor model was found to predict campaign success with high performance.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\"\u003e\n \u003ch2\u003e2.1.5 Long-term Study of Crowdfunding Platform: Predicting Project Success and Fundraising Amount\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eMost of the research papers are based on Kickstarter platform because it is the biggest crowdfunding site. But there is no research paper studying the entire data yet.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\"\u003e\n \u003ch2\u003e2.1.6 Crystals \u0026ndash; Kyber\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eCRYSTALS - Kyber, a CCA-secure module-lattice-based KEM that introduces the Kyber Lattice-based Cryptography approach, was suggested by Joppe Bos et al [\u003cspan class=\"CitationRef\"\u003e8\u003c/span\u003e]. Kyber is a collection of post-quantum cryptographic primitives centred on a key-encapsulation mechanism (KEM) that is based on module lattice hardness hypotheses. By using a modified version of the Fujisaki-Okamoto transform, a CCA-secure KEM was built and a public-key encryption strategy that is CPA-secure was presented. The new construction\u0026rsquo;s key and ciphertext sizes are roughly half that of the old one, the KEM provides CCA rather than just passive security, and the security is based on a more flexible and broad lattice problem.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\"\u003e\n \u003ch2\u003e2.1.7 Noninteractive Zero Knowledge Proof System\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eZero Knowledge Proof, according to Huixin Wu[\u003cspan class=\"CitationRef\"\u003e10\u003c/span\u003e], is a crucial area of computational complexity theory and cryptography. There is only one message transmitted from the prover to the verifier in the Zero Knowledge Proof (ZKP) system. The method proposed in this work takes use of cryptographic techniques to enable several parties to validate the veracity of a piece of information without having to reveal the data that makes it up. a group of technologies that make it possible to verify information without revealing the supporting evidence. This paper covers and analyses the fundamental ideas of the noninteractive zero knowledge proof system in detail, and it also provides a summary of the research advancements made by this system.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\"\u003e\n \u003ch2\u003e2.2 LIMITATION OF THE EXISTING SYSTEM\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eAll of today\u0026rsquo;s crowd funding transactions depend on a variety of different crowdfunding platforms, each of which needs a sizable sum of money from contributors and investors to fulfil its requirements, which may or may not be satisfactory. Numerous platforms serve as gatekeepers, implementing stringent limitations and guidelines that make it challenging for contributors and investors to have full influence over the project\u0026rsquo;s success.\u003c/p\u003e\n \u003cp\u003eThe promises given to donors are frequently not guaranteed by crowd funding techniques, which can be unjust to the contributors, discourage them from participating in the effort, and complicate project management. When an idea gains traction on crowdfunding platforms, many other entrepreneurs are motivated to produce similar goods, which heightens competition.\u003c/p\u003e\n \u003cp\u003eMany crowd funding platforms do not ensure that the commitments made to donors will be kept, which can be unjust to the contributors, discourage them from participating in the effort, and complicate project management.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e"},{"header":"3. System Architecture","content":"\u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe general architecture of architecture is described in this section. Figure \u003cspan class=\"InternalRef\"\u003e3.1\u003c/span\u003e depicts the system architecture. The following sections provide an explanation of the architecture\u0026rsquo;s modules.\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec21\"\u003e\n \u003ch2\u003e3.1 SECURITY ENHANCED BLOCKCHAIN CROWDFUNDING USING LATTICE CRYPTOSYSTEM\u003c/h2\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec22\"\u003e\n \u003ch2\u003e3.2 MODULES AND ITS DESCRIPTION\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe proposed system follows a tightly coupled architecture as represented in the Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e3.1\u003c/span\u003e comprising of the following modules.\u003c/p\u003e\n \u003c/div\u003e\u003cspan\u003e\n \u003cp\u003e1. Campaign creation\u003c/p\u003e\n \u003c/span\u003e \u003cspan\u003e\n \u003cp\u003e2. Spending Request Module\u003c/p\u003e\n \u003c/span\u003e \u003cspan\u003e\n \u003cp\u003e3. Voting System Module\u003c/p\u003e\n \u003c/span\u003e \u003cspan\u003e\n \u003cp\u003e4. ML Data Pre-Processing Module\u003c/p\u003e\n \u003c/span\u003e \u003cspan\u003e\n \u003cp\u003e5. ML Pipeline Module with Logistic Regression\u003c/p\u003e\n \u003c/span\u003e \u003cspan\u003e\n \u003cp\u003e6. ML Hyperparameter Tuning Module\u003c/p\u003e\n \u003c/span\u003e\n \u003cdiv class=\"Section3\" id=\"Sec23\"\u003e\n \u003ch2\u003e3.2.1 Campaign Creation\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eA project manager initiates a new project at the first step by giving the project name, description, and minimal contribution. Then, contributors may browse through all of the active projects on the crowd funding website and choose any project to support with a donation. They must contribute at least the amount that the project manager specified when the project was founded in order to be recognised as contributors. And the project managers can use this money now that it has been added to their wallet.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec24\"\u003e\n \u003ch2\u003e3.2.2 Spending Request Module\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eIf a project manager wishes to use funds provided by investors at this point, they must produce a spending request that specifies how the funds will be used, how much money will be spent overall, and the address of the vendor who will provide the needed materials.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec25\"\u003e\n \u003ch2\u003e3.2.3 Voting System Module\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eOnly contributors who have invested in that particular project may approve or disapprove the project managers\u0026rsquo; requests for expenditures since the voting system is set up in that way. The voting process also makes sure that a contributor cannot vote for the same expenditure request twice. Therefore, the money is paid to the vendor so that the user can deliver the utilities requested by the project manager if the expenditure request is approved by more than half of the project\u0026rsquo;s contributors.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec26\"\u003e\n \u003ch2\u003e3.2.4 Kyber Lattice System and Whirlpool Hashing\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eBased on the difficulties of resolving the learning-with-errors (LWE) problem across module lattices, Kyber is a secure key encapsulation mechanism (KEM). Similar to AES-128, AES-192, and AES-256, Kyber-512 aims to offer security. Regev\u0026rsquo;s revolutionary LWE-based encryption method served as the model for Kyber\u0026rsquo;s idea.\u003c/p\u003e\n \u003cp\u003eKyber is used to generate a randomness factor that is added to the Whirlpool hashing input. This addition of randomness is commonly referred as the salting process in the Whirlpool hash. It ensures that two users who supply the same data to the blockchain have different hash values in the blockchain.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec27\"\u003e\n \u003ch2\u003e3.2.5 Private Blockchain Network\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe private blockchain network is designed to act as a local blockchain for this decentralized application. This blockchain is instantiated using the Blockchain class which is an array of Block class objects. The Block class has data field, timestamp, previous hash and hash as parameters that are needed while creating a Block object. The enhanced security using Kyber lattice system is implemented on this local blockchain.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec28\"\u003e\n \u003ch2\u003e3.2.6 Vendor Verification Using Zero Knowledge Proof\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eA vendor verification check feature is incorporated in the requests lists page of the campaign to verify the authenticity of the resource providers/vendors. The verification system is designed using Zero Knowledge Proof method and the Poseidon Hashing algorithm. The vendor generates a Proof using his details which are hashed using Poseidon algorithm. This Proof along with the Verifier smart contract is used in marking the vendor as Verified on the Blockchain. The campaign contributors gain confidence in the vendors owing to their authenticity.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec29\"\u003e\n \u003ch2\u003e3.2.7 ML Data Pre-Processing Module\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eAs shown in Fig. \u003cspan class=\"InternalRef\"\u003e3.4\u003c/span\u003e, the dataset for the machine learning model is obtained from Kickstarter website. The obtained dataset is pre-processed before feeding it to the model. The pre-processing consists of three phases. The first phase is Parsing, the features having date data type such as created on, deadline, launched on are parsed in this phase. The second phase is dropping the unnecessary features, features such as communication, live, suspended project data do not influence the campaign and they are ignored. The third phase is one-hot encoding, that is the categorical type data are one-hot encoded. Thus, the final dataset after pre-processing is used in the machine learning model.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec30\"\u003e\n \u003ch2\u003e3.2.8 ML Pipeline Module with Logistic Regression\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eAs shown in Fig. \u003cspan class=\"InternalRef\"\u003e3.5\u003c/span\u003e, the feature selection is an important process before training the model, the dataset after pre-processing, which is then processed by the Column Selector and the Feature Selector. The output of the previous process will be columns and features to be used. The CountVectorizer is then used to get the Frequency of usage. Chi square feature selection has been used to select the important features from the given dataset. The output received from the chi square feature selection is used to train the model.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec31\"\u003e\n \u003ch2\u003e3.2.9 ML Hyperparameter Tuning Module\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eAs shown in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e3.6\u003c/span\u003e, the parameter grids with ranges of c and ranges of reduced dim are sent to the GridSearchCV with an estimator, the output is then fit into the pipeline with best hyperparameters and grid cv results are produced. The mean test scores are then obtained from the grid cv results. Finally, the precision, recall and f1- score are calculated. Also the confusion matrix is populated.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e"},{"header":"4. Implementation","content":"\u003cdiv class=\"Section2\" id=\"Sec33\"\u003e\n \u003ch2\u003e4.1 TOOLS USED\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe following are the list of tools and libraries used in this project.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec34\"\u003e\n \u003ch2\u003e4.1.1 Remix Editor\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eRemix Editor is a development environment and testing framework. With Remix, Smart Contracts are compiled and deployed and injected into web applications.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec35\"\u003e\n \u003ch2\u003e4.1.2 Web3.js Library\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eWeb3.js is a pool of libraries which permits us to interact with a on-chain and off-chain remote ethereum nodes, using a HTTP or Inter Process Communication (IPC) connection. The web3 JavaScript library interacts with the Ethereum blockchain. It can retrieve user accounts, send transactions and interact with smart contracts.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec36\"\u003e\n \u003ch2\u003e4.1.3 Node Js\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eNode.js is a server-side JavaScript run-time environment. Notably, Node.js does not expose a global ”window” object, since it does not run within a browser. Node.js is primarily used for non-blocking, event-driven servers, due to its single-threaded nature. It’s used for traditional web sites and back-end API services, but was designed with real-time, push-based architectures.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec37\"\u003e\n \u003ch2\u003e4.1.4 Metamask Wallet Provider\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eMetamask works like a connection between the webpages and the Ethereum blockchain. The smart contracts in the blockchain check whether the node in the network can access that data or not. The nodes can be managed by Metamask wallet when a local blockchain network is built.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec38\"\u003e\n \u003ch2\u003e4.1.5 Next.js Framework\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eOn top of Node js, the open-source development framework Next.js enables server-side rendering and the creation of static web pages for React-based web apps. When constructing a server-rendered website using Node js, developers are advised to use Next.js, which is included under ’Recommended Toolchains’ in the React documentation. Next.js is used to expand the capabilities of traditional React apps to include applications rendered on the server side. Traditional React apps render all of their information in the client-side browser.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec39\"\u003e\n \u003ch2\u003e4.1.6 React Framework\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eReact is a front end JS library for developing user interfaces or UI components. React JS helps in building a dynamic and efficient webpages. Especially, while loading the current blockchain network to the webpage.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec40\"\u003e\n \u003ch2\u003e4.2 SMART CONTRACTS\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe built private blockchain enables the creation of smart contracts, which are rules for transactions. A smart contract is a self-executing, self-enforcing technology that maintains and implements contractual provisions through blockchain and is regulated by its clear terms and conditions. Simple ”if/when... then.. ” statements that are put into code on a blockchain using Solidity are what smart contracts use to function. When preset requirements have been satisfied and validated, a network of computers carries out the operations (registering an institution, issuing certificates, and sharing certificates). When the transaction is finished, the blockchain is then updated.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec41\"\u003e\n \u003ch2\u003e4.2.1 Design for Campaign Contract\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eA smart contract is used to manage the attributes of nodes throughout the process of adding a new node to the blockchain. The smart contract is created and published on the network. Construction of a campaign contract:\u003c/p\u003e\n \u003c/div\u003e\u003cspan\u003e\n \u003cp\u003e1. A new user adding a campaign will be prompted to provide a minimum contribution amount before the campaign is given a unique blockchain address. The campaign and the react application communicate with each other using this URL. In addition, msg.sender stores the addresses of all nodes that invoke smart contracts.\u003c/p\u003e\n \u003c/span\u003e \u003cspan\u003e\n \u003cp\u003e2. A campaign instance defines a structure called Request, and the Request is used to store data related to the request made by the campaign manager, such as the description, the minimum contribution amount, the recipient’s address, the number of times the request has been approved, a map of the recipient’s address, and a bool to confirm request approvals. The smart contract uses mapping, a storage structure for key-value pairs.\u003c/p\u003e\n \u003c/span\u003e \u003cspan\u003e\n \u003cp\u003e3. The campaign contract has a contribution feature that enables anyone to make a donation to a campaign as long as they make a larger contribution than the required minimum.\u003c/p\u003e\n \u003c/span\u003e\u003cspan\u003e\n \u003cp\u003e4. The manager can create Requests for his/her campaign where they request ethereum for any particular purpose for their project. The requests can be approved by the contributors of the campaign. The manager can finalize the request once the request has received enough approvals and then the ethereum is sent to the recipient and the contract is explained in algorithm \u003cspan class=\"InternalRef\"\u003e4.1\u003c/span\u003e\u003c/p\u003e\n \u003c/span\u003e\n \u003cp\u003e\u003cimg src=\"data:image/png;base64,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\"\u003e\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec42\"\u003e\n \u003ch2\u003e4.2.2 Design for Campaign Factory Contract\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe deployment of the campaign instance to the Rinkeby network is done in the campaign factory contract. The contract is explained in algorithm and the createCampaign function will deploy a new instance of a campaign and will store the resulting address back in an array. A function will return the list of all the campaigns deployed in an array of addresses where all the campaign addresses are stored.\u003c/p\u003e\n \u003c/div\u003e\u003cspan\u003e\n \u003cp\u003e\u003cimg src=\"data:image/png;base64,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\"\u003e\u003c/p\u003e\n \u003c/span\u003e\n \u003cp\u003e\u003cbr\u003e\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec43\"\u003e\n \u003ch2\u003e4.2.3 Design for Verifier Contract\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eVerifier contract is engaged in the process of authenticating a vendor in the blockchain. By using the proof values generated by Zero Knowledge Proof system as input and verification key in the contract, it verifies the vendor and marks the vendor as verified and returns a boolean output. The contributors can verify whether the vendor is authenticated or not using this feature and then the contract is explained in algorithm \u003cspan class=\"InternalRef\"\u003e4.3\u003c/span\u003e\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec44\"\u003e\n \u003ch2\u003e4.3 DESIGN OF KYBER LATTICE CRYPTOSYSTEM\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eKyber is a secure key encapsulation mechanism (KEM) based on the hardness of lattice problems. It is based on the difficulty of solving the learning-with-errors (LWE) issue across module lattices. Kyber-512 aspires to provide security comparable to AES-128, AES-192 and AES-256. Kyber’s concept is inspired by Regev’s groundbreaking LWE-based encryption technique.\u003c/p\u003e\n \u003cp\u003eKyber processes the plain text in binary format. This module can be broadly classified into four phases. Firstly, the set up phase, the variables are populated with some random values within a specific range. The public key A is generated in this phase. The key generation phase, where the public key B and secret key S are generated using some random variables. The third phase is the Encryption phase, the plain text is encrypted using the public keys A and B to get the Cipher text. The Cipher text is an array of integers. The final phase is the Decryption phase, the secret key S is used to decrypt the Cipher text which will provide the original text.\u003c/p\u003e\n \u003cp\u003e\u003cimg src=\"data:image/png;base64,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\"\u003e\u003c/p\u003e\n \u003cp\u003eThe Number Theoretic Transform (NTT) is a finite-field version of the standard Discrete Fourier Transform (DFT). It basically allows us to execute rapid convolutions on integer sequences without having to worry about round-off issues. Convolutions are useful for multiplying large numbers or long polynomials and Number Theoretic Transform is asymptotically faster than other approaches. Inverse Number Theoretic Transform (INTT) function has been used to convert the variable from the Number Theoretic form to its original state. The compress operation is used after the Inverse Number Theoretic Transformation. Similarly, the decompress operation is applied before the Number Theoretic Transformation. The primary motivation behind the creation of the Compress and Decompress functions was to be able to remove low-order bits from the public key and ciphertext that have little bearing on the chance that the decryption would work correctly, hence lowering the parameters.\u003c/p\u003e\n \u003c/div\u003e\n \u003cp\u003e\u003cbr\u003e\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec45\"\u003e\n \u003ch2\u003e4.4 DESIGN OF MACHINE LEARNING MODULE\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe dataset for the machine learning model is obtained from Kickstarter website. The obtained dataset is pre-processed before feeding it to the model.\u003c/p\u003e\n \u003cp\u003eThe pre-processing consists of three phases. The first phase is Parsing, the features having date data type such as created on, deadline, launched on are parsed in this phase. The second phase is dropping the unnecessary features, features such as communication, live, suspended project data do not influence the campaign and they are ignored. The third phase is one-hot encoding, that is the categorical type data are one-hot encoded. Thus, the final dataset after pre-processing is used in the machine learning model (logistic regression).\u003c/p\u003e\n \u003cp\u003eBefore training the logistic regression model, the feature selection is a crucial step. The dataset is handled by the Column Selector and the Feature Selector after preprocessing. Columns and features for usage will be the product of the preceding operation. The Frequency of use is then obtained using the CountVectorizer. To choose the most crucial characteristics from the provided dataset, 2(chi square) feature selection method is employed. The model is trained using the results of the 2(chi square) feature selection.\u003c/p\u003e\n \u003cp\u003eThe parameter grids with ranges of c and ranges of reduced dim are sent to the GridSearchCV with an estimator, the output is then fit into the pipeline with best hyperparameters and grid cv results are produced. The mean test scores are then obtained from the grid cv results. Finally, the precision, recall and f1- score are calculated. Also, the confusion matrix is populated and this is further explained in algorithm \u003cspan class=\"InternalRef\"\u003e4.4\u003c/span\u003e\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec46\"\u003e\n \u003ch2\u003e4.5 FRAMEWORK SERVICES\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe framework services comprises of functional modules such as web3 js which is used for loading ethereum blockchain network in the web page. Express JS and React JS are used to build the user interface as the React JS can change the data without reloading the page. Web3 JS module of the ethereum is used to allow the web page to contact the blockchain network.\u003c/p\u003e\n \u003c/div\u003e\n \u003cp\u003e\u003cimg src=\"data:image/png;base64,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\"\u003e\u003cbr\u003e\u003c/p\u003e\n\u003c/div\u003e"},{"header":"5. Results And Performance Analysis","content":"\u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eIn this chapter, the results of the modules are presented.The modules are implemented in Solidity programming language, React JS, and Python.\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec48\"\u003e\n \u003ch2\u003e5.1 DEPLOYMENT OF CAMPAIGN FACTORY\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe deployment of the campaign instance to the Rinkeby network is done in the campaign factory contract. The address of the deployed Campaign Factory contract will be updated in the factory.js file as shown in the below Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.1\u003c/span\u003e.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eAfter updating the address of Campaign factory, Crowd\u0026thinsp;+\u0026thinsp;application can be started by executing the server.js file. The application will be hosted on localhost:3000.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec49\"\u003e\n \u003ch2\u003e5.2 LIST OF CAMPAIGNS\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe campaign page is the initial page that appears when the web application is launched. Here, current campaigns are presented, and a new campaign may also be established, as illustrated in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.2\u003c/span\u003e. If Metamask is installed in the browser, then all of these procedures can be carried out.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec50\"\u003e\n \u003ch2\u003e5.3 CREATE CAMPAIGN\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe page where a transaction must be made in order to start a new campaign will be redirected when the Create Campaign button is clicked, as illustrated in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.3\u003c/span\u003e.\u003c/p\u003e\n \u003cp\u003eWhatever adjustments or actions need to be taken, a transaction must be completed, and the change won\u0026rsquo;t take effect until the transaction has been verified. A confirmed transaction notice is shown in Fig. \u003cspan class=\"InternalRef\"\u003e5.4\u003c/span\u003e.\u003c/p\u003e\n \u003cp\u003eAfter the successful creation of a campaign, it will be redirected to the Campaigns list page.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec51\"\u003e\n \u003ch2\u003e5.4 CAMPAIGN DETAILS\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThis page, which is reached by pressing the View Campaign button on the initial web page, contains information about the campaign, including the manager\u0026rsquo;s address, the minimum contribution, the number of requests the manager has made, the number of approvers, and the campaign balance. Investors who donate to the campaign can vote on proposals. The campaign display website is shown in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.5\u003c/span\u003e below.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec52\"\u003e\n \u003ch2\u003e5.4.1 Spending Requests\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eWhen the View Requests button is clicked, the page depicted in Figure 5.6 will be displayed. It comprises of all of the manager\u0026rsquo;s demands. It also has buttons for approval and completion. When a request receives a sufficient number of votes, the manager will utilise the Finalize button to complete the payment. Approvers use the Approve button to cast their votes.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec53\"\u003e\n \u003ch2\u003e5.4.2 Add Request\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eA request may be made by entering a description of the spending request, the amount in ether you want to spend, and the address of the receiver to whom the manager wants to transfer the money when the Add Request button is clicked, as illustrated in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.7\u003c/span\u003e. (vendor address).\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec54\"\u003e\n \u003ch2\u003e5.4.3 Approve Request\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe request turns green, suggesting that it may be finalised by the manager, as illustrated in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.8\u003c/span\u003e, after receiving enough approvals or majority votes. Additionally, it has an add request button that is only accessible by the manager and is used to make another expenditure request (person who created the campaign).\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec55\"\u003e\n \u003ch2\u003e5.4.4 Finalize Request\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe whole request turns grey, as shown in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.9\u003c/span\u003e, signifying that the request has been closed, and the money is sent to the vendor address that was supplied when the request is finalised. Before and after the request is sent, the amount of money or currency in the wallet is verified to make sure the transaction went through properly.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec56\"\u003e\n \u003ch2\u003e5.4.5 Vendor\u0026rsquo;s Wallet\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eBefore finalizing the request the vendor\u0026rsquo;s wallet is empty as shown in Fig. \u003cspan class=\"InternalRef\"\u003e5.10\u003c/span\u003e\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eFollowing completion of the request, the vendor receives the funds and updates the wallet balance as seen in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.11\u003c/span\u003e.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec57\"\u003e\n \u003ch2\u003e5.5 RESULTS OF ENHANCED WHIRLPOOL HASHING USING KYBER\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eA new spending request created by the manager is placed in the local blockchain and hashed by the modified Whirlpool Hashing Algorithm using Kyber Lattice Cryptography and the results for this feature are shown in Fig. \u003cspan class=\"InternalRef\"\u003e5.12\u003c/span\u003e\u003c/p\u003e\n \u003cp\u003eVarious statistical tests can be applied to a sequence to attempt to compare and evaluate the sequence to a truly random sequence. Randomness is a probabilistic property; that is, the properties of a random sequence can be characterized and described in terms of probability. The likely outcome of statistical tests, when applied to a truly random sequence, is known a priori and can be described in probabilistic terms. There are an infinite number of possible statistical tests, each assessing the presence or absence of a \u0026ldquo;pattern\u0026rdquo; which, if detected, would indicate that the sequence is nonrandom.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec58\"\u003e\n \u003ch2\u003e5.6 RESULTS OF ZERO KNOWLEDGE PROOF VERIFICATION\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe components of the Zero Knowledge Proof Verification results are discussed below.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec59\"\u003e\n \u003ch2\u003e5.6.1 Vendor Verification\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eVendor enters the proof values generated by zero knowledge proof using their private details and gets verified.\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec60\"\u003e\n \u003ch2\u003e5.6.2 Verification Check\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe contributor checks the authentication of the vendor by pressing the \u0026rsquo;Check\u0026rsquo; button. Result as shown in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.15\u003c/span\u003e\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec61\"\u003e\n \u003ch2\u003e5.7 MACHINE LEARNING RESULTS\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe components of the machine learning results are detailed below.\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec62\"\u003e\n \u003ch2\u003e5.7.1 Accuracy, Precision and Recall\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eAccuracy, Precision and Recall are shown in Fig.\u0026nbsp;\u003cspan class=\"InternalRef\"\u003e5.17\u003c/span\u003e\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"Section3\" id=\"Sec63\"\u003e\n \u003ch2\u003e5.7.2 Area Under ROC Curve\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eThe area under ROC curve is shown in Fig.\u0026nbsp;5.18\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec64\"\u003e\n \u003ch2\u003e5.8 OBSERVATIONS\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eTo utilise blockchain-based crowdsourcing to collect money for a firm, a campaign must first be launched. This campaign will then receive a unique 64-character public key that may be used by investors as an address for donations. The capital can be provided by investors in the form of ether. The donated funds won\u0026rsquo;t be sent immediately to the person who started the campaign; instead, they\u0026rsquo;ll stay in the smart contract itself. If the campaign creator wishes to spend money, he or she must submit a spending request that includes the quantity of ether requested as well as the address or vendor\u0026rsquo;s public key to which the ether should be transmitted in order to obtain the necessary materials.\u003c/p\u003e\n \u003cp\u003eCompared to the current system, this form of crowdsourcing is more faster and more secure. In the current system, the campaign creator has direct control over the donated funds and is free to flee with them. Additionally, it takes a long time for the funds to be transferred to the campaign creator or startup, and a fee will be deducted from the contributions when a third party like Kickstarter is used to raise the necessary funds. Therefore, crowdfunding with blockchain technology is a more innovative and effective way to raise money for entrepreneurs.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e"},{"header":"6. Conclusion And Future Work","content":"\u003cdiv class=\"Section2\" id=\"Sec66\"\u003e\n \u003ch2\u003e6.1 CONCLUSION\u003c/h2\u003e\n \u003cp\u003eThe project suggests a smart contract-based solution to enable a secure method of crowd funding by guaranteeing the safety of the money donated by the investors and also ensuring that each and every step taken in the startup with the help of donated money involves investor\u0026rsquo;s opinion. For example, whenever the campaign creator wants to spend the money, he or she has to make a spending request where the purpose of using the money, to whom the money is being sent (vendor), and the amount needed should be mentioned. The key benefit of employing a smart contract, which is a block chain idea, is that it is resistant to various dangers. Additionally, it offers various characteristics including enhanced dependability and quicker, more effective operating. The web application has been successfully calculated and tested using \u0026rdquo;test cases.\u0026rdquo; It is user-friendly and contains the necessary choices that the user may use to carry out the intended action. To guarantee that the identification of resource providers is handled in a safe way, zero knowledge proof has been developed. Lattice cryptography systems and the security benefit they offer to block chain data have also been studied.\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv class=\"Section2\" id=\"Sec67\"\u003e\n \u003ch2\u003e6.2 FUTURE WORK\u003c/h2\u003e\n \u003cdiv class=\"BlockQuote\"\u003e\n \u003cp\u003eFuture works will aim to find a way to enhance the cryptographic algorithm to strenghten the data security and provide a more secure channel for data transmission over systems than the current proposition. This will enable investors to take part in crowd funding in a trusted manner, since the data is end-to-end encrypted.\u003c/p\u003e\n \u003c/div\u003e\n\u003c/div\u003e"},{"header":"Declarations","content":"\u003cul\u003e\n \u003cli\u003eI confirm that I have read, understand, and agreed to the submission guidelines, policies, and submission declaration of the journal.\u0026nbsp;\u003c/li\u003e\n \u003cli\u003eI confirm that all authors of the manuscript have no conflict of interests to declare.\u003c/li\u003e\n \u003cli\u003eI confirm that the manuscript is the authors\u0026apos; original work and the manuscript has not received prior publication and is not under consideration for publication elsewhere.\u003c/li\u003e\n \u003cli\u003eOn behalf of all Co-Authors, I shall bear full responsibility for the submission.\u003c/li\u003e\n \u003cli\u003eI confirm that all authors listed on the title page have contributed significantly to the work, have read the manuscript, attest to the validity and legitimacy of the data and its interpretation, and agree to its submission.\u003c/li\u003e\n \u003cli\u003eI confirm that the paper now submitted is not copied or plagiarized version of some other published work.\u003c/li\u003e\n \u003cli\u003eI declare that I shall not submit the paper for publication in any other Journal or Magazine till the decision is made by journal editors.\u0026nbsp;\u003c/li\u003e\n \u003cli\u003e\u0026middot; If the paper is finally accepted by the journal for publication, I confirm that I will either publish the paper immediately or withdraw it according to withdrawal policies.\u0026nbsp;\u003c/li\u003e\n \u003cli\u003e\u0026middot;\u0026nbsp;I understand that submission of false or incorrect information/undertaking would invite appropriate penal actions as per norms/rules of the journal.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e\u0026nbsp;\u003c/strong\u003e\u003cstrong\u003eAuthors\u0026apos; contributions\u003c/strong\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003eAuthors Hussain Imthiaz Hussain \u003csup\u003e2\u003c/sup\u003e, Vishal Celestine G \u003csup\u003e3\u003c/sup\u003e, and Vishwa Kumar S \u003csup\u003e4\u003c/sup\u003e. Conceived of the presented idea. Authors Hussain Imthiaz Hussain \u003csup\u003e2\u003c/sup\u003e, Vishal Celestine G \u003csup\u003e3\u003c/sup\u003edeveloped the theory and performed the computations. Authors Vishwa Kumar S \u003csup\u003e4\u003c/sup\u003e and Dr. K. Vidya \u003csup\u003e1\u003c/sup\u003e and V.Noel Jeygar Robert\u003csup\u003e5\u003c/sup\u003e verified the analytical methods. \u0026nbsp;Authors Dr. K. Vidya \u003csup\u003e1\u003c/sup\u003e and V.Noel Jeygar Robert\u003csup\u003e5\u003c/sup\u003e to investigate and supervised the findings of this work. All authors discussed the results and contributed to the final manuscript.\u003cstrong\u003e\u0026nbsp;\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFunding\u0026nbsp;\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis research received no specific grant from any funding agency in the public, commercial, or not-for-profit sectors.\u003c/p\u003e"},{"header":"References","content":"\u003col\u003e\n\u003cli\u003eConstantine Xipolitopoulos, Maria Nefeli Nikiforos, Maria Malakopoulou, and Adamantia Pateli. Success factors for crowd-funding campaigns with machine learning techniques. 09 2020.\u003c/li\u003e\n\u003cli\u003eFirmansyah Ashari. Smart contract and blockchain for crowdfunding platform. \u003cem\u003eInternational Journal of Advanced Trends in Computer Science and Engineering\u003c/em\u003e, 9:3036\u0026ndash;3041, 06 2020.\u003c/li\u003e\n\u003cli\u003eHasnan Baber. \u003cem\u003eBlockchain-Based\u003c/em\u003e\u003cem\u003e \u003c/em\u003e\u003cem\u003eCrowdfunding\u003c/em\u003e, pages 117\u0026ndash;130. 01 2020.\u003c/li\u003e\n\u003cli\u003eHongjiang Zhao and Cephas Coffie. The applications of blockchain technology in crowdfunding contract. \u003cem\u003eSSRN Electronic Journal\u003c/em\u003e, 01 2018.\u003c/li\u003e\n\u003cli\u003eHuixin Wu and Feng Wang. A survey of noninteractive zero knowledge proof system and its applications. \u003cem\u003eThe Scientific World Journal\u003c/em\u003e, 2014, 2014.\u003c/li\u003e\n\u003cli\u003eJens Groth. Efficient zero-knowledge arguments from two-tiered homomorphic commitments. In Dong Hoon Lee and Xiaoyun Wang, editors, \u003cem\u003eAdvances in Cryptology \u0026ndash; ASIACRYPT 2011\u003c/em\u003e, pages 431\u0026ndash;448, Berlin, Heidelberg, 2011. Springer Berlin Heidelberg.\u003c/li\u003e\n\u003cli\u003eJoppe Bos, Leo Ducas, Eike Kiltz, T Lepoint, Vadim Lyubashevsky, John M. Schanck, Peter Schwabe, Gregor Seiler, and Damien Stehle. Crystals - kyber: A cca-secure module-lattice-based kem. In \u003cem\u003e2018 IEEE European Symposium on Security and Privacy (EuroSP)\u003c/em\u003e, pages 353\u0026ndash;367, 2018.\u003c/li\u003e\n\u003cli\u003eLorenzo Grassi, Dmitry Khovratovich, Christian Rechberger, Arnab Roy, and Markus Schofnegger. Poseidon: A new hash function for zero-knowledge proof systems. In \u003cem\u003eUSENIX Security Symposium\u003c/em\u003e, 2021.\u003c/li\u003e\n\u003cli\u003eMd Saadat, Syed Halim, Husna Osman, Rasheed Nassr, and Megat Zuhairi. Blockchain based crowdfunding systems. \u003cem\u003eIndonesian Journal of Electrical Engineering and Computer Science\u003c/em\u003e, 15:409, 07 2019.\u003c/li\u003e\n\u003cli\u003eNihit Desai, Raghav Gupta, and Karen Truong. Plead or pitch ? the role of language in kickstarter project success. 2015.\u003c/li\u003e\n\u003cli\u003eNikhil Yadav and Sarasvathi V. Venturing crowdfunding using smart contracts in blockchain. In \u003cem\u003e2020 Third International Conference on Smart Systems and Inventive Technology (ICSSIT)\u003c/em\u003e, pages 192\u0026ndash;197, 2020. \u003c/li\u003e\n\u003cli\u003eP. Kitsos and O. Koufopavlou. Whirlpool hash function: architecture and vlsi implementation. In \u003cem\u003e2004 IEEE International Symposium on Circuits and Systems (IEEE Cat. No.04CH37512)\u003c/em\u003e, volume 2, pages II\u0026ndash;893, 2004.\u003c/li\u003e\n\u003cli\u003ePawan Pradhan, Sayan Rakshit, and Sujoy Datta. Lattice based cryptography : Its applications, areas of interest future scope. pages 988\u0026ndash;993, 03 2019.\u003c/li\u003e\n\u003cli\u003eRoberto Maria Avanzi, Joppe W. Bos, Le\u0026acute;o Ducas, Eike Kiltz, Tancre`de Lepoint, Vadim Lyubashevsky, John M. Schanck, Peter Schwabe, Gregor Seiler, and Damien Stehle\u0026acute;. Crystals-kyber algorithm specifications and supporting documentation. 2017.\u003c/li\u003e\n\u003cli\u003eSushanth Kumar Reddy Kura Trupthi M. Crowdfunding using blockchain. \u003cem\u003eInternational Journal of Advanced Science and Technology\u003c/em\u003e, 29(1):932 \u0026ndash; 945, Jan. 2020.\u003c/li\u003e\n\u003cli\u003eViren Patil, Vasvi Gupta, and Rohini Sarode. Blockchain-based crowdfunding application. In \u003cem\u003e2021 Fifth International Conference on I-SMAC (IoT in Social, Mobile, Analytics and Cloud) (I-SMAC)\u003c/em\u003e, pages 1546\u0026ndash;1553, 2021.\u003c/li\u003e\n\u003c/ol\u003e"}],"fulltextSource":"","fullText":"","funders":[],"hasAdminPriorityOnWorkflow":false,"hasManuscriptDocX":true,"hasOptedInToPreprint":true,"hasPassedJournalQc":"","hasAnyPriority":false,"hideJournal":true,"highlight":"","institution":"","isAcceptedByJournal":false,"isAuthorSuppliedPdf":false,"isDeskRejected":"","isHiddenFromSearch":false,"isInQc":false,"isInWorkflow":false,"isPdf":false,"isPdfUpToDate":true,"isWithdrawnOrRetracted":false,"journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true},"keywords":"","lastPublishedDoi":"10.21203/rs.3.rs-2020457/v1","lastPublishedDoiUrl":"https://doi.org/10.21203/rs.3.rs-2020457/v1","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"manuscriptAbstract":"\u003cp\u003eCrowdfunding is a method of raising funds from a large number of individuals or businesses. Investors can contribute to any project they are interested in and earn if the initiative is successful. Many crowdfunding sites now exist, and they accept large sums of money from investors and contributors and then leave them with bogus promises.\u003c/p\u003e \u003cp\u003eBlockchain-based crowdfunding alters the usual approach to company finance. Generally, when people need to acquire funds to start a firm, they must first develop a strategy, statistical surveys, and models, and then offer their ideas to attract people or organisations. Banks, individual investors, and venture capital firms were among the sources of funding. The modern crowdfunding concept is based on three types of on-screen characters: the task initiator who presents the idea or venture to be financed, individuals or investors who invest in the idea, and a platform that connects these two characters to make the venture successful. It can be used to fund a wide range of start-ups and new concepts, such as inventive activities, medical improvements, travel, and social commercial enterprise projects.\u003c/p\u003e \u003cp\u003eThis work presents a practical implementation of a crowdfunding application that is secured by a lattice-based cryptosystem for encryption of user data and zero-knowledge proof for the identification of application users. Additionally, machine learning has been used for prediction of campaign success for the benefit of fund contributors.\u003c/p\u003e","manuscriptTitle":"Security Enhanced Crowdfunding Using Blockchain and Lattice Based Cryptosystem","msid":"","msnumber":"","nonDraftVersions":[{"code":1,"date":"2022-09-08 16:45:58","doi":"10.21203/rs.3.rs-2020457/v1","editorialEvents":[{"type":"communityComments","content":0}],"status":"published","journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true}}],"origin":"","ownerIdentity":"c5bc04f2-2938-4633-bac5-9cc81b480bd1","owner":[],"postedDate":"September 8th, 2022","published":true,"recentEditorialEvents":[],"rejectedJournal":[],"revision":"","amendment":"","status":"posted","subjectAreas":[],"tags":[],"updatedAt":"2023-01-21T22:14:22+00:00","versionOfRecord":[],"versionCreatedAt":"2022-09-08 16:45:58","video":"","vorDoi":"","vorDoiUrl":"","workflowStages":[]},"version":"v1","identity":"rs-2020457","journalConfig":"researchsquare"},"__N_SSP":true},"page":"/article/[identity]/[[...version]]","query":{"redirect":"/article/rs-2020457","identity":"rs-2020457","version":["v1"]},"buildId":"WrCJVZZCHTDjtuVLN7oU0","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[84888],"gssp":true,"scriptLoader":[]}
Text is read by the "Ask this paper" AI Q&A widget below.
Extraction quality varies by source — PMC NXML preserves structure
cleanly, OA-HTML may include some navigation residue, and OA-PDF can
have broken hyphenation. The publisher copy
(via DOI)
is the canonical version.