{"id":5277,"date":"2019-02-22T07:09:36","date_gmt":"2019-02-22T06:09:36","guid":{"rendered":"https:\/\/monodes.com\/predaelli\/?p=5277"},"modified":"2019-02-21T07:14:31","modified_gmt":"2019-02-21T06:14:31","slug":"5277","status":"publish","type":"post","link":"https:\/\/monodes.com\/predaelli\/2019\/02\/22\/5277\/","title":{"rendered":""},"content":{"rendered":"\n<h1 class=\"wp-block-heading\" id=\"78bb\"><a href=\"https:\/\/blog.florence.chat\/a-distributed-search-engine-for-the-distributed-web-39c377dc700e\">A Distributed Search Engine for the Distributed Web<\/a><\/h1>\n\n\n\n<!--more-->\n\n\n\n<!--nextpage-->\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>  <br \/><a href=\"https:\/\/blog.florence.chat\/a-distributed-search-engine-for-the-distributed-web-39c377dc700e\">A Distributed Search Engine for the Distributed Web<\/a> <br \/>An update on the development of <a rel=\"noreferrer noopener\" href=\"https:\/\/dweb.page\/\" target=\"_blank\">Dweb.page<\/a><br \/><a href=\"https:\/\/blog.florence.chat\/@davidhawig?source=post_header_lockup\"><\/a><br \/><a href=\"https:\/\/blog.florence.chat\/@davidhawig\">David Hawig<\/a><br \/>Dec 13, 2018<br \/><br \/>While <a rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/Search_neutrality\" target=\"_blank\">search neutrality<\/a> might be open for discussion, it is pretty clear that Google\u2019s centralized search engine with a <a rel=\"noreferrer noopener\" href=\"https:\/\/www.statista.com\/statistics\/216573\/worldwide-market-share-of-search-engines\/\" target=\"_blank\">market share of above 90 %<\/a> and quarterly earnings of above <a rel=\"noreferrer noopener\" href=\"https:\/\/www.statista.com\/statistics\/267606\/quarterly-revenue-of-google\/\" target=\"_blank\">30 billion dollars<\/a> are far from ideal. Monopolies not only are <a rel=\"noreferrer noopener\" href=\"https:\/\/www.thoughtco.com\/the-economic-inefficiency-of-monopoly-1147784\" target=\"_blank\">economically inefficient<\/a> but also increase the chance of <a rel=\"noreferrer noopener\" href=\"https:\/\/www.theguardian.com\/technology\/2018\/nov\/27\/google-employees-letter-censored-search-engine-china-project-dragonfly\" target=\"_blank\">censorship<\/a> and <a rel=\"noreferrer noopener\" href=\"https:\/\/techcrunch.com\/2018\/02\/09\/google-fined-21-1m-for-search-bias-in-india\/\" target=\"_blank\">search bias<\/a>.<br \/>If  it comes to finding information on the distributed web, a centralized  search engine seems counterintuitive, because it goes against the  principles underlying the distributed web. That is why we are currently  working hard to create the first fully functional, completely  distributed search engine for our project <a rel=\"noreferrer noopener\" href=\"https:\/\/dweb.page\/\" target=\"_blank\">Dweb.page<\/a>.<br \/><br \/><br \/><br \/>First draft of our improved search\u00a0engine<br \/><strong>Problem<\/strong><br \/>Despite  the earlier mentioned downsides of current search engines, we believe  multiple reasons have led to difficulties in changing the existing  model. At the same time, a distributed and fully transparent search  engine for the Dweb comes with a set of challenges:<br \/>Speed:  The speed of the distributed search engine needs to be at least as high  as the current solutions, and there are a lot of problems with the  transaction times based on distributed ledgers.<br \/>Device  independence: Today more and more people are using mobile phones; the  distributed search engine needs to run on PCs and mobile phones without  any centralized backend.<br \/>Indexing:  How to collect, parse, and store data to facilitate fast and accurate  information retrieval in a distributed way and still ensure that people  don\u2019t create fake search entries?<br \/>Availability:  How to ensure that distributed data is still available when requested?  Especially since the data can be hosted locally and therefore only be  available in certain time slots.<br \/>Monetization  and incentives: How to finance the storage and continuous development  of the tool? Without this monetization part figured out, it will be  difficult for decentralized solutions to compete with existing  centralized ones for example regarding <a rel=\"noreferrer noopener\" href=\"https:\/\/www.cnbc.com\/2018\/10\/21\/how-much-do-blockchain-engineers-make.html\" target=\"_blank\">human talent<\/a> or <a rel=\"noreferrer noopener\" href=\"https:\/\/9to5mac.com\/2018\/09\/28\/google-paying-apple-9-billion-default-seach-engine\/\" target=\"_blank\">partnerships\/integrations<\/a>, etc.<br \/><strong>A potential solution<\/strong><br \/>To  ensure high speed and feeless transactions, it was clear from the  beginning that distributed ledger technologies which are limited by  either one of the two performance issues were not an option. Therefore,  we chose the combination of <a rel=\"noreferrer noopener\" href=\"http:\/\/ipfs.io\" target=\"_blank\">IPFS<\/a> and <a rel=\"noreferrer noopener\" href=\"http:\/\/iota.org\" target=\"_blank\">IOTA<\/a>.  IPFS is fulfilling the obvious role of a fast and distributed way to  share and host files, whereas IOTA provides the necessary distributed  database layer. It is important to notice here that the database only  uses a part of the IOTA technology which is already fully functional and  independent of future research work (e.g., regarding the coordinator).<br \/>This  combination allows us to provide an experience which works on all kinds  of devices. We even had a prototype running in the Internet Explorer.  The unique feature is that we can deliver a fully distributed experience  without the additional installation of any software since all the code  is running inside a simple, completely open source web page, which by  itself is distributed on IPFS. It also means every single user will run  their own search engine, which is the ultimate distribution.<br \/>Inspired by this distributed interface, we are working on the following concept for a distributed search engine:<br \/><br \/><br \/><br \/>The distributed and personalized search\u00a0engine<br \/>We assume two types of users, who we call Authors and Consumers (one person could fulfill both roles though).<br \/>Authors upload content on the distributed web via <a rel=\"noreferrer noopener\" href=\"https:\/\/dweb.page\/\" target=\"_blank\">Dweb.page<\/a>.  If they want their content to be publicly found by others, metadata,  which is signed by the Authors, is upload on IOTA. This way anyone can  create their own metadata instead of a centralized indexing system. On  top of it, this signature system would make it impossible to pretend to  be someone else, which today happens for example with <a rel=\"noreferrer noopener\" href=\"https:\/\/www.bbc.com\/news\/world-africa-40762796\" target=\"_blank\">news stories<\/a> or <a rel=\"noreferrer noopener\" href=\"https:\/\/www.thesslstore.com\/blog\/5-ways-to-determine-if-a-website-is-fake-fraudulent-or-a-scam\/\" target=\"_blank\">bank websites<\/a>.<br \/>When Consumers open for the first time <a rel=\"noreferrer noopener\" href=\"https:\/\/dweb.page\/\" target=\"_blank\">Dweb.page<\/a>,  they will start loading the most recent metadata in the background.  Based on this metadata a search engine running locally provides the user  with initial and fully transparent search results. These first searches  by the user will automatically be used to subscribe to the potentially  interesting Authors and this way load additional metadata. This can be  seen as a social network for metadata, where Consumers \u201cfollow\u201d the  Authors. Advantages of the approach include on the one hand that users  do not have to load the complete metadata of the entire web and on the  other hand, that they can easily block a provider of malicious metadata  (e.g., wrongly labeled content). Furthermore, without this  subscriber\/block model, people could start spamming the search engine.<br \/>Additionally, everyone who uses the search engine of <a rel=\"noreferrer noopener\" href=\"https:\/\/dweb.page\/\" target=\"_blank\">Dweb.page<\/a>  will generate information about the availability of content. This means  that if someone tries to download some content on the distributed web  which is no longer available, the information will be passed to other  users. If multiple Authors tell you that a file is no longer available,  it\u2019s automatically removed from your search results. If only one tells  you about it, the file would still be listed in your search results to  give you the option to check, if the Author doesn\u2019t try to prevent you  from accessing certain content by lying about its availability.<br \/>The last key, challenging, and often overlooked part for every distributed project is how to <a rel=\"noreferrer noopener\" href=\"https:\/\/dci.mit.edu\/decentralizedweb\/\" target=\"_blank\">monetize and provide incentives<\/a>  to storage providers and developers of the distributed web. In a  distributed and open source solution without any centralization, it is  possible to circumvent any incentive model. That is why a lot of  decentralized projects end up having a centralized layer. Furthermore,  donation-based systems don\u2019t seem to work well for <a rel=\"noreferrer noopener\" href=\"https:\/\/link.springer.com\/article\/10.1007%2Fs11002-013-9237-2\" target=\"_blank\">subscription or long-term based business models<\/a>.  That is why we are considering creating a model benefiting all  participants while maintaining complete transparency. The following  picture illustrates how this potential solution would work:<br \/><br \/><br \/><br \/>The business model of a distributed search\u00a0engine<br \/>The  search market is well positioned for advertisement since, even without  giving up any privacy, it is possible to show advertisement based on  search terms. This advertisement revenue can then be split and be used  on the one hand to provide a certain amount of free storage to Authors  and, on the other hand, to support the Developer to improve the tool  further. If you think for example about Google providing you 15 GB of  free cloud storage and still earning billions quarterly, you get the  idea that the above model might result in a completely free web for  Authors! Also, it is important to point out that, a large share of the  population is <a rel=\"noreferrer noopener\" href=\"https:\/\/www.vieodesign.com\/blog\/new-data-why-people-hate-ads\" target=\"_blank\">not against advertisement per se<\/a>, but against the misuse of their personal data, which would be impossible based on this model.<br \/>Naturally,  this model needs to be set up completely transparent on a distributed  ledger. If this is the case, a normal contract between all participants  might be sufficient at the beginning since you could easily sue the  malicious parties (e.g., if money gets misused instead of invested into  the infrastructure). However, this contract should also contain right  from the beginning the option to change over time based on a voting  system for example. Otherwise, a model like this would be unable to  adapt to future developments, for example, storage prices might get so  cheap that it makes sense to use the money for other purposes. This and  other aspects of the system, like the quality of the provided storage or  advertisement, might be difficult to integrate into smart contracts.  Nevertheless, at a later stage, this setup should be replaced with fully  automated smart contracts.<br \/><em>This  article provides a view of our current research, and it does not  constitute a finished product. We believe that we can only achieve this  vision if we are transparent right from the start and we appreciate any  feedback or contribution. Help us in achieving this vision:<\/em><br \/><a rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/PACTCare\/Dweb.page\" target=\"_blank\"><em>GitHub<\/em><\/a><br \/><a rel=\"noreferrer noopener\" href=\"https:\/\/discord.gg\/AgkUKYy\" target=\"_blank\"><em>Discord Server<\/em><\/a> <\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p class=\"excerpt\">A Distributed Search Engine for the Distributed Web<\/p>\n<p class=\"more-link-p\"><a class=\"more-link\" href=\"https:\/\/monodes.com\/predaelli\/2019\/02\/22\/5277\/\">Read more &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"link","meta":{"inline_featured_image":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[171,225],"tags":[],"class_list":["post-5277","post","type-post","status-publish","format-link","hentry","category-ethics","category-privacy","post_format-post-format-link"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/s6daft-5277","jetpack-related-posts":[{"id":14830,"url":"https:\/\/monodes.com\/predaelli\/2026\/01\/25\/garage-an-open-source-distributed-object-storage-service\/","url_meta":{"origin":5277,"position":0},"title":"Garage &#8211; An open-source distributed object storage service","author":"Paolo Redaelli","date":"2026-01-25","format":false,"excerpt":"Garage - An open-source distributed object storage service tailored for self-hosting","rel":"","context":"In &quot;Software&quot;","block_context":{"text":"Software","link":"https:\/\/monodes.com\/predaelli\/category\/software\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":8527,"url":"https:\/\/monodes.com\/predaelli\/2021\/06\/23\/brave-search-opens-to-the-public\/","url_meta":{"origin":5277,"position":1},"title":"Brave Search opens to the public!","author":"Paolo Redaelli","date":"2021-06-23","format":false,"excerpt":"Google gets a new rival as Brave Search opens to the public https:\/\/search.brave.com\/ That's beautiful. I found a little disturbing to acknoledge that DuckDuckGo, as well as Yahoo, Ecosia, StartPage, Qwant and other smaller search engines, repackage search results from Microsoft Bing and Google through partnerships with the bigger search\u2026","rel":"","context":"In &quot;Web&quot;","block_context":{"text":"Web","link":"https:\/\/monodes.com\/predaelli\/category\/web\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":14373,"url":"https:\/\/monodes.com\/predaelli\/2025\/12\/30\/so-many-comparisons\/","url_meta":{"origin":5277,"position":2},"title":"So many comparisons!","author":"Paolo Redaelli","date":"2025-12-30","format":false,"excerpt":"I already pointed out \u00a0Instant Messengers - Comparison Table but eylenburg.github.io offers so many other comparisons! It also gives a link to an Interactive Small Phone List on smaudd.github.io\/smallphones, Here's the list of comparison tables: Operating Systems Operating Systems - Timeline and Family Tree Android-based Operating Systems Linux Distributions with\u2026","rel":"","context":"In &quot;Comparisons&quot;","block_context":{"text":"Comparisons","link":"https:\/\/monodes.com\/predaelli\/category\/comparisons\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":4855,"url":"https:\/\/monodes.com\/predaelli\/2018\/11\/05\/gigablast\/","url_meta":{"origin":5277,"position":3},"title":"Gigablast","author":"Paolo Redaelli","date":"2018-11-05","format":false,"excerpt":"Gigablast, an opensource (mono-node?) search engine","rel":"","context":"In &quot;Software Libero&quot;","block_context":{"text":"Software Libero","link":"https:\/\/monodes.com\/predaelli\/category\/software\/software-libero\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":6362,"url":"https:\/\/monodes.com\/predaelli\/2019\/12\/30\/secushare\/","url_meta":{"origin":5277,"position":4},"title":"SECUSHARE","author":"Paolo Redaelli","date":"2019-12-30","format":false,"excerpt":"Secushare employs GNUnet for end-to-end encryption and anonymizing mesh routing (because it has a more suitable architecture than Tor or I2P) and applies PSYC on top (because it performs better than XMPP, JSON or OStatus) to create a distributed social graph. Together, these technologies allow for distributed private social networking\u2026","rel":"","context":"In &quot;Osservanda&quot;","block_context":{"text":"Osservanda","link":"https:\/\/monodes.com\/predaelli\/category\/software\/osservanda\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/monodes.com\/predaelli\/wp-content\/uploads\/sites\/4\/2019\/12\/secushare-0444.png?fit=444%2C296&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":14868,"url":"https:\/\/monodes.com\/predaelli\/2026\/01\/28\/yartam3\/","url_meta":{"origin":5277,"position":5},"title":"YARTAM+3","author":"Paolo Redaelli","date":"2026-01-28","format":false,"excerpt":"Bing\"real name\" is \"Microsoft Bing\" as it is owned by Microsoft, so reading that Neocities Is Blocked by Bing makes me desire to avoid Bing, especially because Bing gave no reason for this blockage. It is not a real censorship but since most people tend to reach any website throught\u2026","rel":"","context":"In &quot;Yet another reason to avoid&quot;","block_context":{"text":"Yet another reason to avoid","link":"https:\/\/monodes.com\/predaelli\/category\/ethics\/yet-another-reason-to-avoid\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/posts\/5277","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/comments?post=5277"}],"version-history":[{"count":0,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/posts\/5277\/revisions"}],"wp:attachment":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/media?parent=5277"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/categories?post=5277"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/tags?post=5277"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}