[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 678: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4668: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4670: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4671: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4672: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
Gryphonheart AddOns - View topic - Will GHI ever support real obfuscation?
View unanswered posts | View active topics It is currently Sun Jul 05, 2020 1:49 pm



Reply to topic  [ 9 posts ] 
 Will GHI ever support real obfuscation? 
Author Message

Joined: Thu Aug 16, 2012 1:31 am
Posts: 11
Realm Name:
I've been considering using GHI for a raiding project of mine that involves using GHI items as currency in exchange for actual WoW coinage and currency, but I don't think I can when all I need to do to screw with anyone's items is even easier than it used to be and leaves no trace (edit to return true for IsCreatedByPlayer). Can't exactly rely on it when I'll have people duping the fake currency left and right.

I realize *some* level of cryptology was implemented but it doesn't seem to be the kind that will prevent messing with others items. I know that it would be extremely difficult to have any decent one-way cryptology, but is there a reasonable way to implement "one-time" items - IE: Where no one can edit the item once it's locked down, even if it means locking out the creator?


Last edited by geokoder on Thu Aug 16, 2012 7:16 pm, edited 1 time in total.



Thu Aug 16, 2012 10:36 am
Profile
Site Admin

Joined: Mon Jun 16, 2008 5:25 pm
Posts: 2422
Realm Region: Europe
Realm Name:
I am afraid that Blizzard requires that our code is fully readable, which means that it will also be fully editable. I have considered changing all variables into nonsence name wise, but they will sadly not allow that either.

Sadly we can not lock out things completely, since the open code will always make it possible for someone to interact at atleast one level.

*edit*
I have been considering the problem a lot over the last two years, since I am facing the same obstacle in the concept for GHP (gh professions). I plan to devote a part of my master thesis to find a solution to it.

Currently there is one way I can imagine that you can use to spot copied coins:
- Give the coins a number attribute. Make it non mergeable. Default value does not matter here.
- Create a list of valid numbers. Either manually or trough a formular that only you know
- Split the coins into stacks of 1 each. Apply one of the numbers from the list to each. You should only use each number once.

After this you can spot counterfit coins when two with the same number or an invalid number occurs. This is ofcause far from fool proof and have some holes in it, since a user could spread the identical coins fast. I think that a way to improve on the idea is to have all the "non malicious" users run a script that validates if a recieved coin is present in another "non malicious" users inventory. If it is, the coin could be denied.

It is still on the concept stage, but that is the direction I am working currently.


Thu Aug 16, 2012 10:49 am
Profile

Joined: Thu Oct 13, 2011 6:38 am
Posts: 303
Realm Name:
This seems like a need for a more comprehensive "raid points" tracking system than a virtual item system. Having an account book on the main raid leader and logging the currency instead of using GHI items on separate characters. Just like how character data is not stored with an individual client to prevent tampering, raid currency is best kept in a central location.


Thu Aug 16, 2012 3:18 pm
Profile

Joined: Thu Aug 16, 2012 1:31 am
Posts: 11
Realm Name:


Thu Aug 16, 2012 6:13 pm
Profile

Joined: Thu Oct 13, 2011 6:38 am
Posts: 303
Realm Name:
You could always produce an addon that specified raid leaders have that will transmit data to each other to keep the books updated. It is possible using the same communication styles we do for GHI to create a decentralized accounting system. In order to do it you would need a trusted core operations team for your raids and such, much like organized guild raids.


You could organize it the same way living campaign RPGs work. When I want to run a Pathfinder Society scenario I register for an event number. I get each person's ID number and report the findings to the central management while the players also get a copy. Use a similar approach and you'll also have logs of how much currency is distributed.


Fri Aug 17, 2012 2:35 am
Profile

Joined: Thu Dec 13, 2012 5:01 am
Posts: 90
Realm Name:
Sorry to revive an old one, but any progress on this idea? I missed this thread somehow when I too began thinking about it a year ago or so, and I think it's the ** fundamental ** idea to the Addon community...

Pilus doesn't your valid list only work when someone gets a 2nd instance of a coin? The invalid coins would eventually get caught, but more than 90% would probably succeed when the spammer introduced it.

I suppose if you had a massive amount of valid coins, it might de-incentivize the spoofing of individual coins.
It would also increase the chances of recipients having pre-existing instances of spoofed coins in their inventory. But they are single stack items, so I don't think the numbers would really support it..
Considering this needs to be written into the core code itself - perhaps the coins could be stored as something other than items, to allow players to have hundreds or thousands of unique GUID's in their inventory.

Sorry if I'm way late to this one :P very curious


Edit - an entirely separate idea is to follow the bitcoin method, and verify every transaction over the chat channels with other GHI users. This could lag quite badly though I think...


Wed Mar 23, 2016 3:28 pm
Profile

Joined: Sun Oct 05, 2008 3:32 am
Posts: 944
Realm Name:
sadly no progress on it. I think alot of us have been killed by IRL....still here though.

_________________
www.netherbane.org
Fethas Ravenmoon Earthen Ring US


Thu Apr 07, 2016 12:26 pm
Profile

Joined: Thu Dec 13, 2012 5:01 am
Posts: 90
Realm Name:
Yea it's an interesting thought experiment.

My hunch is the bitcoin style would actually work for quite a while on a WoW server. Every GHI instance/player has a ledger of coins:owners . Every transaction is broadcast over the network, and at least, say 10, players would have to agree that the payer in fact owned the coin, at which point everyone's ledger would update to the new owner.

It would inherently be more reliable during peak hours, but that's fine. Perhaps you just wouldn't be able to use it with less than 10 GHI users on or something.


Thu Apr 07, 2016 4:33 pm
Profile
Site Admin

Joined: Mon Jun 16, 2008 5:25 pm
Posts: 2422
Realm Region: Europe
Realm Name:
I agree that it is an option Flid. I investigated it a bit at some point and one of the bottlenecks would be the amount of storage that is needed to keep these values saved. The block chain etc would be quite big compared to a normal addon memory usage.


Mon Jul 18, 2016 6:59 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 9 posts ] 

Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.