Thread: BlockScape - Corrupt HyperLedger BlockChain

Page 2 of 4 FirstFirst 1234 LastLast
Results 11 to 20 of 32
  1. #11  
    Christ is King

    Makar's Avatar
    Join Date
    Jul 2011
    Age
    29
    Posts
    2,004
    Thanks given
    545
    Thanks received
    965
    Rep Power
    427
    Quote Originally Posted by Corrupt View Post
    Well, thats a lot simplier than you think. It just comes down to how its coded in the functions. In this example for the bank and stacking items, when an item amount is incremented, so is its merkleroot, which in turns creates a new hash based on the amount. So when you deposit the items, after it goes through the blockchain on checks, it will add the amount to that item, triggering its merkleroot to rehash based on the amount, with the original hash, create a consistent system that can verify hashes based on the amount given by only changing the nonce in the item.
    Isn't this immensely expensive to be computing on every single action a player is doing that modifies their bank or inventory? It's cool but doesn't seem reasonable to host.

    I'm also kind of failing to see how it could detect dupes any better than just good logging if it's not actually tagging each individual item with its own hash upon item creation rather than recomputing it every time it's interacted with.
    Attached image
    The best open-source pre-eoc remake project that isn't in its early stages for once
    Darkan Client (727 Client Refactor)
    Darkan World Server
    “It would not be impossible to prove with sufficient repetition and a psychological understanding of the people concerned that a square is in fact a circle. They are mere words, and words can be molded until they clothe ideas and disguise.”
    Reply With Quote  
     

  2. #12  
    Everything is Corrupt
    Corrupt's Avatar
    Join Date
    Oct 2020
    Posts
    115
    Thanks given
    15
    Thanks received
    36
    Rep Power
    63
    Quote Originally Posted by Makar View Post
    Isn't this immensely expensive to be computing on every single action a player is doing that modifies their bank or inventory? It's cool but doesn't seem reasonable to host.

    I'm also kind of failing to see how it could detect dupes any better than just good logging if it's not actually tagging each individual item with its own hash upon item creation rather than recomputing it every time it's interacted with.
    You really are thinking too heavily into computational power and have to research the different hashing algorithims and they computational speed relative to benchmark tests. In this chain, most of the hashing runs off either SHA-1 (Item Hashing) and SHA-256/SHA-512 (Block and Transaction Hashing). These have different purposes and used for very specific instances. For example of Items, the hashing is on a 36 byte range, which SHA-1 runs about ~587.9 ms per 1M operations. In the aspect of lets say 25000 players all running at once, the hashing function for the items would be able to handle all 25000 without even a notice, even 50000 players wouldnt see much of any notice. SHA-256 and SHA-512 are used for hashing the blocks and transactions, which arent iterated as much as lets say item hashing. SHA-1 stores 40 char hashing, which makes it one of the fastest for this, as say SHA-512 holds 128 char hash. Hashing honestly doesn't take that much computational power to process if you know how to do it properly. but, give this question I did some test :

    2500000 Hashing Operations 6.2406178 seconds
    400601.3635380779 hashing operations per second

    So this is roughly about 400k hashing functions per second that can be analyzed with Item stacking. This specific test ran creating a new item 2500x, and than adding 1 quantity to that item 1000x which rehashes after each quantity. So honestly, in comparison of computation power, it is beyond scalable and very diverse.

    The item hashing is done in a very specific way, in which the transaction itself keeps the signatures of the item and the quantity it was passed. The items also have an array of strings that hold the wallet address of the past 32 members who held that specific item. Both are these are used to compare hashing, and to compare transactions from the chain to the actual item they hold. If the chain sees lets say 40 and the item is higher, it runs through its signature hashing, verifies that the hashing is different, than uses the quantity on the chain to replace and rehashes it to the expected value. If the item didnt go through the chain and verifies to the hash it has, the item will be deleted back to the value the chain verifies.

    chain verifications are one of the beautiful things that comes with this tech. if done right, the entire chain can verify itself with every single instance of object running on the server, including npcs and players if i decide to add that in. The true nature of blockchain is that everything is stored through a ledger and anything that the ledger cant account for is considered invalid.
    Living in a Corrupted World

    Attached image
    Reply With Quote  
     

  3. #13  
    Everything is Corrupt
    Corrupt's Avatar
    Join Date
    Oct 2020
    Posts
    115
    Thanks given
    15
    Thanks received
    36
    Rep Power
    63
    Update - Added contract explorer, future explorer, and block explorer (still not 100% yet as blockchain is still developing)
    Added some show-offs for the explorers and first custom raid being built
    Living in a Corrupted World

    Attached image
    Reply With Quote  
     

  4. Thankful user:


  5. #14  
    Banned

    Join Date
    Mar 2015
    Age
    31
    Posts
    1,332
    Thanks given
    215
    Thanks received
    329
    Rep Power
    0
    Quote Originally Posted by Corrupt View Post
    Update - Added contract explorer, future explorer, and block explorer (still not 100% yet as blockchain is still developing)
    Added some show-offs for the explorers and first custom raid being built
    the idea looks cool, id rather play this kind of custom server than a spongebobscape
    Reply With Quote  
     

  6. #15  
    Registered Member
    Melvin's Avatar
    Join Date
    Aug 2011
    Posts
    1,150
    Thanks given
    546
    Thanks received
    418
    Rep Power
    1561
    Quote Originally Posted by Dyrroth View Post
    the idea looks cool, id rather play this kind of custom server than a spongebobscape
    honestly tho, name a bad spongebob server


    A creative man is motivated by the desire to achieve, not by the desire to beat others.”


    ― Ayn Rand
    Reply With Quote  
     

  7. #16  
    Christ is King

    Makar's Avatar
    Join Date
    Jul 2011
    Age
    29
    Posts
    2,004
    Thanks given
    545
    Thanks received
    965
    Rep Power
    427
    Quote Originally Posted by Corrupt View Post
    You really are thinking too heavily into computational power and have to research the different hashing algorithims and they computational speed relative to benchmark tests. In this chain, most of the hashing runs off either SHA-1 (Item Hashing) and SHA-256/SHA-512 (Block and Transaction Hashing). These have different purposes and used for very specific instances. For example of Items, the hashing is on a 36 byte range, which SHA-1 runs about ~587.9 ms per 1M operations. In the aspect of lets say 25000 players all running at once, the hashing function for the items would be able to handle all 25000 without even a notice, even 50000 players wouldnt see much of any notice. SHA-256 and SHA-512 are used for hashing the blocks and transactions, which arent iterated as much as lets say item hashing. SHA-1 stores 40 char hashing, which makes it one of the fastest for this, as say SHA-512 holds 128 char hash. Hashing honestly doesn't take that much computational power to process if you know how to do it properly. but, give this question I did some test :

    2500000 Hashing Operations 6.2406178 seconds
    400601.3635380779 hashing operations per second

    So this is roughly about 400k hashing functions per second that can be analyzed with Item stacking. This specific test ran creating a new item 2500x, and than adding 1 quantity to that item 1000x which rehashes after each quantity. So honestly, in comparison of computation power, it is beyond scalable and very diverse.

    The item hashing is done in a very specific way, in which the transaction itself keeps the signatures of the item and the quantity it was passed. The items also have an array of strings that hold the wallet address of the past 32 members who held that specific item. Both are these are used to compare hashing, and to compare transactions from the chain to the actual item they hold. If the chain sees lets say 40 and the item is higher, it runs through its signature hashing, verifies that the hashing is different, than uses the quantity on the chain to replace and rehashes it to the expected value. If the item didnt go through the chain and verifies to the hash it has, the item will be deleted back to the value the chain verifies.

    chain verifications are one of the beautiful things that comes with this tech. if done right, the entire chain can verify itself with every single instance of object running on the server, including npcs and players if i decide to add that in. The true nature of blockchain is that everything is stored through a ledger and anything that the ledger cant account for is considered invalid.
    Yes, that makes sense. I know simple hashing doesn't take much computation (not sure what you mean by knowing how to do it properly considering every single thing you have listed so far is a standard-library-level hashing algo that have standard implementations, unless you severely revolutionized one of these and wrote your own algorithm?)

    Also, I am more talking about the blockchain specific functionality, not just hashing as just calculating a hash on every item quantity change is viable. However, calculating a hash on its own does not provide any protection against duplication at all. Does verifying and maintaining a blockchain ledger not require significant computation? Or are cryptocurrencies just scamming when they heat up multiple people around the world's GPUs to 100C just to approve and process one transaction?

    I just want to know how an RSPS running for multiple multiple years with many players (many of whom decide to spam click withdraw-1 a bazillion times in a bank sometimes for little to no reason) will be able to maintain a blockchain ledger for the tiniest and most common actions with items. These actions you're creating blockchain entries for are things that eat up ridiculous disk space simply logging to an optimized and well-designed database. The storage efficiency comes with a computational cost as a tradeoff when it comes to blockchain and in trading a currency itself between players I can see this being totally viable and long-term but doing this on every single interaction with an item regardless of it being passed between players, I am not sure I am convinced.
    Last edited by Makar; 10-14-2022 at 11:54 PM.
    Attached image
    The best open-source pre-eoc remake project that isn't in its early stages for once
    Darkan Client (727 Client Refactor)
    Darkan World Server
    “It would not be impossible to prove with sufficient repetition and a psychological understanding of the people concerned that a square is in fact a circle. They are mere words, and words can be molded until they clothe ideas and disguise.”
    Reply With Quote  
     

  8. Thankful user:


  9. #17  
    Everything is Corrupt
    Corrupt's Avatar
    Join Date
    Oct 2020
    Posts
    115
    Thanks given
    15
    Thanks received
    36
    Rep Power
    63
    Quote Originally Posted by Makar View Post
    Yes, that makes sense. I know simple hashing doesn't take much computation (not sure what you mean by knowing how to do it properly considering every single thing you have listed so far is a standard-library-level hashing algo that have standard implementations, unless you severely revolutionized one of these and wrote your own algorithm?)

    Also, I am more talking about the blockchain specific functionality, not just hashing as just calculating a hash on every item quantity change is viable. However, calculating a hash on its own does not provide any protection against duplication at all. Does verifying and maintaining a blockchain ledger not require significant computation? Or are cryptocurrencies just scamming when they heat up multiple people around the world's GPUs to 100C just to approve and process one transaction?

    I just want to know how an RSPS running for multiple multiple years with many players (many of whom decide to spam click withdraw-1 a bazillion times in a bank sometimes for little to no reason) will be able to maintain a blockchain ledger for the tiniest and most common actions with items. These actions you're creating blockchain entries for are things that eat up ridiculous disk space simply logging to an optimized and well-designed database. The storage efficiency comes with a computational cost as a tradeoff when it comes to blockchain and in trading a currency itself between players I can see this being totally viable and long-term but doing this on every single interaction with an item regardless of it being passed between players, I am not sure I am convinced.
    Hashing can be easily verifiable, as this is a common practice like password hashing. It just comes down to how you use it. Doing it properly meaning there are many ways to hash, and different algorithims to do so. Certain ones are better than some for certain operations. As the blocks rely on ECDSA for signatures, transactions rely on a SHA-256, items rely on SHA-1, etc. How you use it and when, is important to limiting needless operation time.

    Hashing does not provide against duplication, again it comes down to a few factors. One major one is that all items are contained on the chain, and constantly verified. When an item is spawned, its signatures are genersted and placed within the players wallet, through the transactions, and than as well other signature are created inside the item itself. You can't rely on one method to really check for things like this. If an item is duplicated, which there are a few honeypots thrown in, yes it will hash on the item itself, and probably even hash an item with more quantity, but it wont add the very specific verification it needs on the player wallet, the chain, and through multiple checks that come up when you either trade or sell it. The process goes :

    Transaction is made with item creation in the transaction -> transaction is placed onto the chain -> Item is created -> Item is hashed with parameters (id, quantity, timestamp, and the player who spawned it) -> Item hash is placed onto that transaction on completion -> item signature is placed into player wallet -> Player wallet address is placed onto the item in an array of past players -> item is finalized.

    Now in the scenario, let's say they try to dupe an item from trading, now the initial transaction is placed, and there are a small few factors that check for multiple transactions of the same time in the same time, and will deny them. If an item is duped, the item signature will be created, but without its own transaction, it will not be placed on the blockchain, or the players wallet, or have the players wallet in the array. When a trade is initiated, or sell to a shop, there is a verification that runs (which takes almost no computation to verify), and all checks must pass for it to continue. Even one failure and the transaction is cancelled, and that item is placed into a check that goes through past transactions to find the place where it did get duped at. This isn't a side-stepped system, there is a lot of structure that goes into place.

    Spam clicking will do nothing in this instance, thanks to the blocks on the chain itself. Multiple transactions have to be placed within order of the block and are processed within order, and any transactions that are duplicated within each check are than thrown out. It runs checks between both past transactions and the block itself. With using the same algorithms for these checks and transactions, any duplicate transaction can be detected by the chain. In the aspect of hundreds of players, the blockchain is very concurrent and is structured to handle up to 5000 transactions a second at the moment and will eventually reach up to 20000. In an aspect of even 1000 players+, this system will handle more than enough input. And it takes up no more space than a player file. Blocks are serialized with all transactions, and with 2500 transactions placed, a block holds less than 250kb of space, and contracts hold about the same. In a blockchain of 1000 blocks, with 20 contracts, and 2500 transactions per, your looking at about 300mb of space, which if thats a problem to hold 300mb of space over a course of about 3 months, its not space that you need to worry about. In the essence of computational power in the idea your thinking of, that comes to a Proof-Of-Work chain, which relies on your computer to complete complex mathematical algorithms. This does not have any of those mechanisms in it, and only have the mechanisms of cryptology. It takes very little computational power to run the chain and process transactions.
    Living in a Corrupted World

    Attached image
    Reply With Quote  
     

  10. #18  
    No oneBlockScape - Corrupt HyperLedger BlockChain

    Mr. Remix's Avatar
    Join Date
    Apr 2020
    Posts
    117
    Thanks given
    21
    Thanks received
    132
    Rep Power
    1083
    Support
    Discord : Remix#1157
    Reply With Quote  
     

  11. #19  
    Everything is Corrupt
    Corrupt's Avatar
    Join Date
    Oct 2020
    Posts
    115
    Thanks given
    15
    Thanks received
    36
    Rep Power
    63
    Update --
    Parallel update and changes to how transactions are called.
    Living in a Corrupted World

    Attached image
    Reply With Quote  
     

  12. #20  
    Extreme Donator

    JayArrowz's Avatar
    Join Date
    Sep 2008
    Posts
    104
    Thanks given
    99
    Thanks received
    107
    Rep Power
    810
    Looks cool. So i assume you're using hyperledger, a centralised chain

    I have a few questions:

    - What consensus algorithm will you be using?
    - Why use blockchain at all, will it not require you to have more than 1 node to reach consensus increasing your server cost greatly? As we all know nodes which are processing transactions and have access to the consensus voting must be dedicated compute. So you will drive your server costs high for no reason to run your chain?
    - Are the smart contracts in solidity or in a different language?
    Reply With Quote  
     

Page 2 of 4 FirstFirst 1234 LastLast

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. Project Corrupted
    By darkburak in forum Advertise
    Replies: 2
    Last Post: 08-19-2010, 03:10 AM
  2. .::CorruptioN::.
    By jamie1993 in forum Advertise
    Replies: 17
    Last Post: 01-30-2009, 06:02 AM
  3. Corruption
    By .Zach in forum RS2 Server
    Replies: 8
    Last Post: 08-14-2008, 04:43 PM
  4. §piderman Čorrupted™
    By Gfx in forum Showcase
    Replies: 6
    Last Post: 01-20-2008, 09:33 PM
  5. Fr33sc4p3 Corrupt? Read This!
    By mrgibblet in forum Tutorials
    Replies: 4
    Last Post: 10-24-2007, 02:19 PM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •