How to get the client IP address in PHP - Stack Overflow
Blockchain Use in Intellectual Property
Link to original article:https://block.co/blockchain-use-in-intellectual-property/ Patents, trademarks, and industrial designs, along with copyrights, are all types of intellectual property protections that help creators of written stories, inventions, artistic works, or symbols to stop people from stealing or copying their pieces of work. In this article, we will examine how blockchain is used in Intellectual Property rights. Broadly speaking, Intellectual Properties (IP) are “unique, value-adding creations of the human intellect that result from human ingenuity, creativity, and inventiveness.” (Kalanje, 2006). By observing trends, we can identify a steady increase in the number of Intellectual Property applications worldwide. According to official statistics by the World Intellectual Property Organization (WIPO), applications worldwide of patents grew 72.3% over ten years, increasing to 3,326,300 from 2008 to 2018. Trademarks grew an astonishing 160% over the same period, to a record 14,321,800 number of applications, while industrial design applications were 1,312,600, growing by 61%. Every country has a specific authority where to apply for proper protection. However, it is becoming increasingly common that these jurisdictions will utilize blockchain technology to provide a smoother, faster, and cheaper application process and a system that ensures an incorruptible and secure timestamping through the hashing function. How does it work? Blockchain ‘trust’ is guaranteed by hashing algorithms, instead of third parties. Since, by default, hashes are unique and cannot be misinterpreted, nor two same hashes can be produced, it’s just easy to identify and match that hash with a unique document creating an unambiguous proof of existence. This way, a permanent ledger of data is created to prove the existence and the lifecycle of a specific IP right, enhancing its protection at a registry or in court. Blockchain use in Intellectual Property potential is enormous, aiding in the evidence of creatorship and provenance authentication to registering and clearing IP rights; digital rights management; establishing and enforcing IP agreements, licenses, or exclusive distribution networks through smart contracts; and transmitting payments in real-time to IP owners. In the case of patents, the real benefit of using blockchain lies in the immutable ledger of records with a tamper-proof code providing strong evidence of facts about an invention life-cycle. However, unlike copyrights, any new creation will still have to be patented with the proper authority or anyone else will be free to copy it or claim it without incurring any legal trouble. https://preview.redd.it/py8eashu7vp51.png?width=940&format=png&auto=webp&s=224cf5fb4087a6100f99a05c19038b18abeca6fa “Deploying blockchain technology within the patent system could reduce inefficiencies in recording and efficiently agreeing the time of registrations, perhaps across several national patent systems” (Boucher et al., 2017). In the case of Copyrights, these do not need to be registered with a government authority, therefore blockchain can have a major role in ensuring that evidence can be provided of authorship, use, and status of a specific production. Particularly, in case of disputes in court, blockchain provides strong evidence to prove an inventor’s right on intellectual property, and protect legal rights on authorship. So, when including writing and literary or artistic works, creators get some type of protection automatically via blockchain, whereas with others, they have to apply for it. Trademarks, on the other hand, are the IP protection type that can most benefit from blockchain because it can easily, quickly, and very cheaply prove how similar are two marks to each other and who can claim to have used it first, providing immutable and timestamped proof of dates and usage. By using blockchain, many of the questions which can arise about exactly when, where, and how the trademark was used, can be instantly answered. Cyprus-based company Block.co provides services in a range of different industries, and timestamping trademarks on the blockchain is one of them. The company is a spin-off of the University of Nicosia, one of the biggest blockchain contributors globally, and its mission is to eliminate document fraud in all sectors, by transforming the way institutions manage digital records. International business and technology lawyer Christiana Aristidou makes large use of Block.co’s services and especially in copyrights and trademarks for several of her clients. “We consider the Block.co solution indispensable towards our objective of constantly enhancing the provision of our legal services through innovative technological solutions. The protection of copyright and other relevant intellectual property rights now involves a simple, fast, automated, and cost-efficient, blockchain-backed certificate issuance. Using blockchain, thereby ensuring a transparent, immutable, secure, time-stamped, and tamper-proof recording of data, the Block.co solution offers a revolutionary and innovative means to protect our clients’ intellectual property, instead of other time-consuming and costly traditional processes.” she recentlystated. “Specifically, our clients’ data and evidence supporting their authorship, invention, or creation of any property that warrants copyright protection, may now be recorded in a digital document, which is then verified in a trusted and time-stamped manner on a blockchain. Our clients retain ownership and control of their data, having been granted easy access to a self-verifiable blockchain-secured certificate of such data.” Smart Contracts Smart contracts could also represent an important asset of blockchain technology because they can be used in intellectual property to establish and enforce agreements such as licenses and allow the transmission of payments in real-time to IP owners. Indeed, they allow automatic payments for transactions between users and rights holders with no middle man, thereby cutting out intermediate fees, longer procedures, and bureaucratic hurdles. https://preview.redd.it/arfnefjx7vp51.png?width=940&format=png&auto=webp&s=78db6dc6f734385de74e2916091fff72e935c4e8 Blockchain in IP around the world In Europe, various governmental agencies and IP registries such as the European Union Intellectual Property Office (EUIPO) are actively involved in researching and promoting blockchain capabilities within the industry. In particular, they believe blockchain can transform IP rights by highlighting, in one of their advanced research forums, that:
IP and blockchain are interrelated
Blockchain is transformative
IP protection will drive innovation in the ecosystem
Blockchain technology will transform IP protection and enforcement
Blockchain technology provides opportunities for both pirates and law enforcement
In India, the IPO (Indian Patent Office) is working on using blockchain and other innovative technologies like AI and IOT to enable smoother patent processes. A Blockchain-AI-based ecosystem is on the table to manage IP protection in India, intending to produce a much more efficient, straightforward, and faster procedure. IPO recently announced a tender called, “Expression of Interest for Making use of Artificial Intelligence, Blockchain, IoT and other latest technologies in the Patent Processing system of IPO”, reinforcing their will to proceed along this line of work and stay up to date with the technological innovation that blockchain, AI and IoT can bring to the benefit of IP rights. A legal framework for a Blockchain-based IP registry to protect and commercialize smart ideas is one of the main and earliest initiatives the IPO is taking for the Indian IP industry. In the United States, we find a clear example of how blockchain is used to protect American businesses from IPR theft by testing imports. Since blockchain has proven to be beneficial to streamline communication between multiple parties securely, the U.S. Customs and Border Protection (CBP), with the funding of the Department of Homeland Security’s Science & Technology Directorate, recently completed a proof-of-concept (PoC) of a blockchain platform with that specific aim. Personal data and trade secrets would be kept safe at all times using encrypted keys, with the blockchain acting as an immutable ledger to record trade transactions. In Southeast Asia, Thailand is leading the way in developing blockchain technology for IP protection. Various organizations and government offices have invested in projects aimed at implementing the tech to make IPR processes more efficient and faster. The Ministry of Commerce has recently launched a feasibility study to explore the use of blockchain for IP registration in the country, while the Thai Trade Policy and Strategy Office (TPSO), in collaboration with the British Embassy, were designated to analyze the study and translate it into action plans for future developments. Conclusion — Blockchain limits and benefits in IP As with every new technology, especially the most disruptive ones, setbacks can be both from a technical and a systemic perspective. Enormous processing power and scalability are still the main issues from a technical point, whereas a system that could connect registries across the world through a single distributed ledger represents the main challenge, not only for IP-related industries. Thankfully, Block.co’s solution already uses the Bitcoin blockchain and its network effect for this purpose, envisioning truly decentralized and secure storage for IP rights, that will outlive any issuing institution itself. An international standardized system and platform that could facilitate global communication and successful management of IP rights via blockchain is an ambition that is reflected in healthcare, law, and many other industries. On the other hand, blockchain based IP rights enforcement is already a huge achievement, especially for those small artists who could not afford teams of lawyers to defend them in disputes to prove records of their authorship. For more info, contactBlock.codirectly or email at [email protected]. Tel +357 70007828 Get the latest from Block.co, like and follow us on social media: ✔️Facebook ✔️LinkedIn ✔️Twitter ✔️YouTube ✔️Medium ✔️Instagram ✔️Telegram ✔️Reddit ✔️GitHub
I received a threatening email demanding me money, from an unknown source
In my gmail account i have received an email demanding me money, over threat of the fact that they allegedly have personal information of me. As a proof, they have one of the passwords i used, which is correct, the type of windows in my computer, and one of my ips which i don't know if it is true or not. I don't know how could i have gotten such a virus into my computer, as i haven't downloaded any files from sketchy or illegal sites. They mention an xls / docm / docx files, but the only ones that i have downloaded recently of this type, is from the site academia, which i doubt would contain virus, or from my university files. In the end they demand 456 euros in Bitcoin. I want to know if i should be worried about this, or if it is nothing more than just a bluff to try to trick people. The full email is this: Olá, Primeiro, não leve isso para o lado pessoal, pois é apenas negócios, pura matemática. Então, para resumir uma longa história, é sobre VOCÊ. Você é um dos muitos, portanto este e-mail é um pouco genérico.Recentemente, você visitou um site ou abriu um documento xls / docm / docx,seu navegador ou suíte de escritório foi explorado e um programa foi carregado no seu sistema.Este programa coletou informações sobre você, como: uma senha aleatória usada por você:um de seus dispositivos:um dos ips usados por você:... a lista continuaria, mas você entende o que quero dizer. O total de dados coletados varia de alguns MB a mais de 10 GB. Coletamos coisas como:- configurações de software, certificados [..]- bancos de dados sql (nós os despejamos caso você tenha clientes importantes)- documentos como .doc, .docm, .docx, .pdf, .xls, [..]- imagens como .jpg, .png e formatos brutos das câmeras [..]- senhas de diferentes fontes (navegadores, clientes de email, software ftp / ssh)- emails enviados / recebidos de suítes de escritório como microsoft office, thunderbird [..]- registros de bate-papo de diferentes programas.- em dispositivos com câmeras (telefone / laptops), tiramos fotos / vídeos curtos quando o usuário entra em alguns sites, assiste a determinado conteúdo de vídeo e / ou em determinados horários do dia em que ele / ela estaria nu [..] Agora, outras pessoas criptografam os dispositivos do usuário e pedem resgate. Achamos que, durante esse período, todos deveriam ter acesso aos seus dados, portanto não estamos fazendo isso. Em vez disso, pedimos que você pague 456 EUR com Bitcoin e todos os dados serão excluídos para sempre automaticamente. Se você não pagar, os dados serão vendidos para quem quiser comprá-los por qualquer preço. Sua decisão. A carteira bitcoin (BTC) é (15PUS1ADxaSoX4dRWxh2vxdybmBNHwmbNc)- Sem parênteses. Esse ID da carteira é exclusivo para você e verificado a cada hora. Depois que o dinheiro for recebido, os dados serão excluídos automaticamente. Tenha um bom dia,Tic Tac So they have sent another email, and they still only mention that particular password: rr.costa, Este é o seu segundo aviso. São 500 euros a mais para ti? Isto é o que acontece quando as pessoas não pagam: Os dados a seguir foram vendidos por alguns euros cada para pessoas que enviarão spam a todos os seus contatos, usarão os dados bancários, usarão os dados de faturamento, usarão o perfil do Facebook (a maioria de vocês tem a mesma senha no Facebook). Você pode alterar uma senha, mas temos todas elas. Todos os contatos foram baixados e armazenados, todos os dados estão prontos para venda. (Here they have a bunch of emails, with passwords, and the particular bank where these people supposedly have their account) E o seu [email protected] Sinha: 70850969. Você tem 24 horas para pagar. 500 EUR. A carteira bitcoin (BTC) é (15PUS1ADxaSoX4dRWxh2vxdybmBNHwmbNc)- Sem parênteses. Tic Tac
Dear Groestlers, it goes without saying that 2020 has been a difficult time for millions of people worldwide. The groestlcoin team would like to take this opportunity to wish everyone our best to everyone coping with the direct and indirect effects of COVID-19. Let it bring out the best in us all and show that collectively, we can conquer anything. The centralised banks and our national governments are facing unprecedented times with interest rates worldwide dropping to record lows in places. Rest assured that this can only strengthen the fundamentals of all decentralised cryptocurrencies and the vision that was seeded with Satoshi's Bitcoin whitepaper over 10 years ago. Despite everything that has been thrown at us this year, the show must go on and the team will still progress and advance to continue the momentum that we have developed over the past 6 years. In addition to this, we'd like to remind you all that this is Groestlcoin's 6th Birthday release! In terms of price there have been some crazy highs and lows over the years (with highs of around $2.60 and lows of $0.000077!), but in terms of value– Groestlcoin just keeps getting more valuable! In these uncertain times, one thing remains clear – Groestlcoin will keep going and keep innovating regardless. On with what has been worked on and completed over the past few months.
UPDATED - Groestlcoin Core 2.18.2
This is a major release of Groestlcoin Core with many protocol level improvements and code optimizations, featuring the technical equivalent of Bitcoin v0.18.2 but with Groestlcoin-specific patches. On a general level, most of what is new is a new 'Groestlcoin-wallet' tool which is now distributed alongside Groestlcoin Core's other executables. NOTE: The 'Account' API has been removed from this version which was typically used in some tip bots. Please ensure you check the release notes from 2.17.2 for details on replacing this functionality.
Builds are now done through Gitian
Calls to getblocktemplate will fail if the segwit rule is not specified. Calling getblocktemplate without segwit specified is almost certainly a misconfiguration since doing so results in lower rewards for the miner. Failed calls will produce an error message describing how to enable the segwit rule.
A warning is printed if an unrecognized section name is used in the configuration file. Recognized sections are [test], [main], and [regtest].
Four new options are available for configuring the maximum number of messages that ZMQ will queue in memory (the "high water mark") before dropping additional messages. The default value is 1,000, the same as was used for previous releases.
The rpcallowip option can no longer be used to automatically listen on all network interfaces. Instead, the rpcbind parameter must be used to specify the IP addresses to listen on. Listening for RPC commands over a public network connection is insecure and should be disabled, so a warning is now printed if a user selects such a configuration. If you need to expose RPC in order to use a tool like Docker, ensure you only bind RPC to your localhost, e.g. docker run [...] -p 127.0.0.1:1441:1441 (this is an extra :1441 over the normal Docker port specification).
The rpcpassword option now causes a startup error if the password set in the configuration file contains a hash character (#), as it's ambiguous whether the hash character is meant for the password or as a comment.
The whitelistforcerelay option is used to relay transactions from whitelisted peers even when not accepted to the mempool. This option now defaults to being off, so that changes in policy and disconnect/ban behavior will not cause a node that is whitelisting another to be dropped by peers.
A new short about the JSON-RPC interface describes cases where the results of anRPC might contain inconsistencies between data sourced from differentsubsystems, such as wallet state and mempool state.
A new document introduces Groestlcoin Core's BIP174 interface, which is used to allow multiple programs to collaboratively work to create, sign, and broadcast new transactions. This is useful for offline (cold storage) wallets, multisig wallets, coinjoin implementations, and many other cases where two or more programs need to interact to generate a complete transaction.
The output script descriptor (https://github.com/groestlcoin/groestlcoin/blob/mastedoc/descriptors.md) documentation has been updated with information about new features in this still-developing language for describing the output scripts that a wallet or other program wants to receive notifications for, such as which addresses it wants to know received payments. The language is currently used in multiple new and updated RPCs described in these release notes and is expected to be adapted to other RPCs and to the underlying wallet structure.
A new --disable-bip70 option may be passed to ./configure to prevent Groestlcoin-Qt from being built with support for the BIP70 payment protocol or from linking libssl. As the payment protocol has exposed Groestlcoin Core to libssl vulnerabilities in the past, builders who don't need BIP70 support are encouraged to use this option to reduce their exposure to future vulnerabilities.
The minimum required version of Qt (when building the GUI) has been increased from 5.2 to 5.5.1 (the depends system provides 5.9.7)
getnodeaddresses returns peer addresses known to this node. It may be used to find nodes to connect to without using a DNS seeder.
listwalletdir returns a list of wallets in the wallet directory (either the default wallet directory or the directory configured bythe -walletdir parameter).
getrpcinfo returns runtime details of the RPC server. Currently, it returns an array of the currently active commands and how long they've been running.
deriveaddresses returns one or more addresses corresponding to an output descriptor.
getdescriptorinfo accepts a descriptor and returns information aboutit, including its computed checksum.
joinpsbts merges multiple distinct PSBTs into a single PSBT. The multiple PSBTs must have different inputs. The resulting PSBT will contain every input and output from all the PSBTs. Any signatures provided in any of the PSBTs will be dropped.
analyzepsbt examines a PSBT and provides information about what the PSBT contains and the next steps that need to be taken in order to complete the transaction. For each input of a PSBT, analyze psbt provides information about what information is missing for that input, including whether a UTXO needs to be provided, what pubkeys still need to be provided, which scripts need to be provided, and what signatures are still needed. Every input will also list which role is needed to complete that input, and analyzepsbt will also list the next role in general needed to complete the PSBT. analyzepsbt will also provide the estimated fee rate and estimated virtual size of the completed transaction if it has enough information to do so.
utxoupdatepsbt searches the set of Unspent Transaction Outputs (UTXOs) to find the outputs being spent by the partial transaction. PSBTs need to have the UTXOs being spent to be provided because the signing algorithm requires information from the UTXO being spent. For segwit inputs, only the UTXO itself is necessary. For non-segwit outputs, the entire previous transaction is needed so that signers can be sure that they are signing the correct thing. Unfortunately, because the UTXO set only contains UTXOs and not full transactions, utxoupdatepsbt will only add the UTXO for segwit inputs.
getpeerinfo now returns an additional minfeefilter field set to the peer's BIP133 fee filter. You can use this to detect that you have peers that are willing to accept transactions below the default minimum relay fee.
The mempool RPCs, such as getrawmempool with verbose=true, now return an additional "bip125-replaceable" value indicating whether thetransaction (or its unconfirmed ancestors) opts-in to asking nodes and miners to replace it with a higher-feerate transaction spending any of the same inputs.
settxfee previously silently ignored attempts to set the fee below the allowed minimums. It now prints a warning. The special value of"0" may still be used to request the minimum value.
getaddressinfo now provides an ischange field indicating whether the wallet used the address in a change output.
importmulti has been updated to support P2WSH, P2WPKH, P2SH-P2WPKH, and P2SH-P2WSH. Requests for P2WSH and P2SH-P2WSH accept an additional witnessscript parameter.
importmulti now returns an additional warnings field for each request with an array of strings explaining when fields are being ignored or are inconsistent, if there are any.
getaddressinfo now returns an additional solvable Boolean field when Groestlcoin Core knows enough about the address's scriptPubKey, optional redeemScript, and optional witnessScript for the wallet to be able to generate an unsigned input spending funds sent to that address.
The getaddressinfo, listunspent, and scantxoutset RPCs now return an additional desc field that contains an output descriptor containing all key paths and signing information for the address (except for the private key). The desc field is only returned for getaddressinfo and listunspent when the address is solvable.
importprivkey will preserve previously-set labels for addresses or public keys corresponding to the private key being imported. For example, if you imported a watch-only address with the label "coldwallet" in earlier releases of Groestlcoin Core, subsequently importing the private key would default to resetting the address's label to the default empty-string label (""). In this release, the previous label of "cold wallet" will be retained. If you optionally specify any label besides the default when calling importprivkey, the new label will be applied to the address.
getmininginfo now omits currentblockweight and currentblocktx when a block was never assembled via RPC on this node.
The getrawtransaction RPC & REST endpoints no longer check the unspent UTXO set for a transaction. The remaining behaviors are as follows:
If a blockhash is provided, check the corresponding block.
If no blockhash is provided, check the mempool.
If no blockhash is provided but txindex is enabled, also check txindex.
unloadwallet is now synchronous, meaning it will not return until the wallet is fully unloaded.
importmulti now supports importing of addresses from descriptors. A desc parameter can be provided instead of the "scriptPubKey" in are quest, as well as an optional range for ranged descriptors to specify the start and end of the range to import. Descriptors with key origin information imported through importmulti will have their key origin information stored in the wallet for use with creating PSBTs.
listunspent has been modified so that it also returns witnessScript, the witness script in the case of a P2WSH orP2SH-P2WSH output.
createwallet now has an optional blank argument that can be used to create a blank wallet. Blank wallets do not have any keys or HDseed. They cannot be opened in software older than 2.18.2. Once a blank wallet has a HD seed set (by using sethdseed) or private keys, scripts, addresses, and other watch only things have been imported, the wallet is no longer blank and can be opened in 2.17.2. Encrypting a blank wallet will also set a HD seed for it.
signrawtransaction is removed after being deprecated and hidden behind a special configuration option in version 2.17.2.
The 'account' API is removed after being deprecated in v2.17.2 The 'label' API was introduced in v2.17.2 as a replacement for accounts. See the release notes from v2.17.2 for a full description of the changes from the 'account' API to the 'label' API.
addwitnessaddress is removed after being deprecated in version 2.16.0.
generate is deprecated and will be fully removed in a subsequent major version. This RPC is only used for testing, but its implementation reached across multiple subsystems (wallet and mining), so it is being deprecated to simplify the wallet-node interface. Projects that are using generate for testing purposes should transition to using the generatetoaddress RPC, which does not require or use the wallet component. Calling generatetoaddress with an address returned by the getnewaddress RPC gives the same functionality as the old generate RPC. To continue using generate in this version, restart groestlcoind with the -deprecatedrpc=generate configuration option.
Be reminded that parts of the validateaddress command have been deprecated and moved to getaddressinfo. The following deprecated fields have moved to getaddressinfo: ismine, iswatchonly,script, hex, pubkeys, sigsrequired, pubkey, embedded,iscompressed, label, timestamp, hdkeypath, hdmasterkeyid.
The addresses field has been removed from the validateaddressand getaddressinfo RPC methods. This field was confusing since it referred to public keys using their P2PKH address. Clients should use the embedded.address field for P2SH or P2WSH wrapped addresses, and pubkeys for inspecting multisig participants.
A new /rest/blockhashbyheight/ endpoint is added for fetching the hash of the block in the current best blockchain based on its height (how many blocks it is after the Genesis Block).
A new Window menu is added alongside the existing File, Settings, and Help menus. Several items from the other menus that opened new windows have been moved to this new Window menu.
In the Send tab, the checkbox for "pay only the required fee" has been removed. Instead, the user can simply decrease the value in the Custom Fee rate field all the way down to the node's configured minimumrelay fee.
In the Overview tab, the watch-only balance will be the only balance shown if the wallet was created using the createwallet RPC and thedisable_private_keys parameter was set to true.
The launch-on-startup option is no longer available on macOS if compiled with macosx min version greater than 10.11 (useCXXFLAGS="-mmacosx-version-min=10.11" CFLAGS="-mmacosx-version-min=10.11" for setting the deployment sdkversion)
A new groestlcoin-wallet tool is now distributed alongside Groestlcoin Core's other executables. Without needing to use any RPCs, this tool can currently create a new wallet file or display some basic information about an existing wallet, such as whether the wallet is encrypted, whether it uses an HD seed, how many transactions it contains, and how many address book entries it has.
Since version 2.16.0, Groestlcoin Core's built-in wallet has defaulted to generating P2SH-wrapped segwit addresses when users want to receive payments. These addresses are backwards compatible with all widely used software. Starting with Groestlcoin Core 2.20.1 (expected about a year after 2.18.2), Groestlcoin Core will default to native segwitaddresses (bech32) that provide additional fee savings and other benefits. Currently, many wallets and services already support sending to bech32 addresses, and if the Groestlcoin Core project sees enough additional adoption, it will instead default to bech32 receiving addresses in Groestlcoin Core 2.19.1. P2SH-wrapped segwit addresses will continue to be provided if the user requests them in the GUI or by RPC, and anyone who doesn't want the update will be able to configure their default address type. (Similarly, pioneering users who want to change their default now may set the addresstype=bech32 configuration option in any Groestlcoin Core release from 2.16.0 up.)
BIP 61 reject messages are now deprecated. Reject messages have no use case on the P2P network and are only logged for debugging by most network nodes. Furthermore, they increase bandwidth and can be harmful for privacy and security. It has been possible to disable BIP 61 messages since v2.17.2 with the -enablebip61=0 option. BIP 61 messages will be disabled by default in a future version, before being removed entirely.
The submitblock RPC previously returned the reason a rejected block was invalid the first time it processed that block but returned a generic "duplicate" rejection message on subsequent occasions it processed the same block. It now always returns the fundamental reason for rejecting an invalid block and only returns "duplicate" for valid blocks it has already accepted.
A new submitheader RPC allows submitting block headers independently from their block. This is likely only useful for testing.
The signrawtransactionwithkey and signrawtransactionwithwallet RPCs have been modified so that they also optionally accept a witnessScript, the witness script in the case of a P2WSH orP2SH-P2WSH output. This is compatible with the change to listunspent.
For the walletprocesspsbt and walletcreatefundedpsbt RPCs, if thebip32derivs parameter is set to true but the key metadata for a public key has not been updated yet, then that key will have a derivation path as if it were just an independent key (i.e. no derivation path and its master fingerprint is itself).
The -usehd configuration option was removed in version 2.16.0 From that version onwards, all new wallets created are hierarchical deterministic wallets. This release makes specifying -usehd an invalid configuration option.
This release allows peers that your node automatically disconnected for misbehaviour (e.g. sending invalid data) to reconnect to your node if you have unused incoming connection slots. If your slots fill up, a misbehaving node will be disconnected to make room for nodes without a history of problems (unless the misbehaving node helps your node in some other way, such as by connecting to a part of the Internet from which you don't have many other peers). Previously, Groestlcoin Core banned the IP addresses of misbehaving peers for a period (default of 1 day); this was easily circumvented by attackers with multiple IP addresses. If you manually ban a peer, such as by using the setban RPC, all connections from that peer will still be rejected.
The key metadata will need to be upgraded the first time that the HDseed is available. For unencrypted wallets this will occur on wallet loading. For encrypted wallets this will occur the first time the wallet is unlocked.
Newly encrypted wallets will no longer require restarting the software. Instead such wallets will be completely unloaded and reloaded to achieve the same effect.
A sub-project of Bitcoin Core now provides Hardware Wallet Interaction (HWI) scripts that allow command-line users to use several popular hardware key management devices with Groestlcoin Core. See their project page for details.
This release changes the Random Number Generator (RNG) used from OpenSSL to Groestlcoin Core's own implementation, although entropy gathered by Groestlcoin Core is fed out to OpenSSL and then read back in when the program needs strong randomness. This moves Groestlcoin Core a little closer to no longer needing to depend on OpenSSL, a dependency that has caused security issues in the past. The new implementation gathers entropy from multiple sources, including from hardware supporting the rdseed CPU instruction.
On macOS, Groestlcoin Core now opts out of application CPU throttling ("app nap") during initial blockchain download, when catching up from over 100 blocks behind the current chain tip, or when reindexing chain data. This helps prevent these operations from taking an excessively long time because the operating system is attempting to conserve power.
How to Upgrade?
Windows If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer. OSX If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), run the dmg and drag Groestlcoin Core to Applications. Ubuntu http://groestlcoin.org/forum/index.php?topic=441.0
ALL NEW - Groestlcoin Moonshine iOS/Android Wallet
Built with React Native, Moonshine utilizes Electrum-GRS's JSON-RPC methods to interact with the Groestlcoin network. GRS Moonshine's intended use is as a hot wallet. Meaning, your keys are only as safe as the device you install this wallet on. As with any hot wallet, please ensure that you keep only a small, responsible amount of Groestlcoin on it at any given time.
Groestlcoin Mainnet & Testnet supported
Multiple wallet support
Electrum - Support for both random and custom peers
Biometric + Pin authentication
Custom fee selection
Import mnemonic phrases via manual entry or scanning
BIP39 Passphrase functionality
Support for Segwit-compatible & legacy addresses in settings
Support individual private key sweeping
UTXO blacklisting - Accessible via the Transaction Detail view, this allows users to blacklist any utxo that they do not wish to include in their list of available utxo's when sending transactions. Blacklisting a utxo excludes its amount from the wallet's total balance.
Ability to Sign & Verify Messages
Support BitID for password-free authentication
Coin Control - This can be accessed from the Send Transaction view and basically allows users to select from a list of available UTXO's to include in their transaction.
HODL GRS connects directly to the Groestlcoin network using SPV mode and doesn't rely on servers that can be hacked or disabled. HODL GRS utilizes AES hardware encryption, app sandboxing, and the latest security features to protect users from malware, browser security holes, and even physical theft. Private keys are stored only in the secure enclave of the user's phone, inaccessible to anyone other than the user. Simplicity and ease-of-use is the core design principle of HODL GRS. A simple recovery phrase (which we call a Backup Recovery Key) is all that is needed to restore the user's wallet if they ever lose or replace their device. HODL GRS is deterministic, which means the user's balance and transaction history can be recovered just from the backup recovery key.
Simplified payment verification for fast mobile performance
Groestlcoin Seed Savior is a tool for recovering BIP39 seed phrases. This tool is meant to help users with recovering a slightly incorrect Groestlcoin mnemonic phrase (AKA backup or seed). You can enter an existing BIP39 mnemonic and get derived addresses in various formats. To find out if one of the suggested addresses is the right one, you can click on the suggested address to check the address' transaction history on a block explorer.
If a word is wrong, the tool will try to suggest the closest option.
If a word is missing or unknown, please type "?" instead and the tool will find all relevant options.
NOTE: NVidia GPU or any CPU only. AMD graphics cards will not work with this address generator. VanitySearch is a command-line Segwit-capable vanity Groestlcoin address generator. Add unique flair when you tell people to send Groestlcoin. Alternatively, VanitySearch can be used to generate random addresses offline. If you're tired of the random, cryptic addresses generated by regular groestlcoin clients, then VanitySearch is the right choice for you to create a more personalized address. VanitySearch is a groestlcoin address prefix finder. If you want to generate safe private keys, use the -s option to enter your passphrase which will be used for generating a base key as for BIP38 standard (VanitySearch.exe -s "My PassPhrase" FXPref). You can also use VanitySearch.exe -ps "My PassPhrase" which will add a crypto secure seed to your passphrase. VanitySearch may not compute a good grid size for your GPU, so try different values using -g option in order to get the best performances. If you want to use GPUs and CPUs together, you may have best performances by keeping one CPU core for handling GPU(s)/CPU exchanges (use -t option to set the number of CPU threads).
Fixed size arithmetic
Fast Modular Inversion (Delayed Right Shift 62 bits)
SecpK1 Fast modular multiplication (2 steps folding 512bits to 256bits using 64 bits digits)
Use some properties of elliptic curve to generate more keys
SSE Secure Hash Algorithm SHA256 and RIPEMD160 (CPU)
Groestlcoin EasyVanity 2020 is a windows app built from the ground-up and makes it easier than ever before to create your very own bespoke bech32 address(es) when whilst not connected to the internet. If you're tired of the random, cryptic bech32 addresses generated by regular Groestlcoin clients, then Groestlcoin EasyVanity2020 is the right choice for you to create a more personalised bech32 address. This 2020 version uses the new VanitySearch to generate not only legacy addresses (F prefix) but also Bech32 addresses (grs1 prefix).
Ability to continue finding keys after first one is found
Includes warning on start-up if connected to the internet
Ability to output keys to a text file (And shows button to open that directory)
Show and hide the private key with a simple toggle switch
Show full output of commands
Ability to choose between Processor (CPU) and Graphics Card (GPU) ( NVidia ONLY! )
Features both a Light and Dark Material Design-Style Themes
Free software - MIT. Anyone can audit the code.
Written in C# - The code is short, and easy to review.
Groestlcoin WPF is an alternative full node client with optional lightweight 'thin-client' mode based on WPF. Windows Presentation Foundation (WPF) is one of Microsoft's latest approaches to a GUI framework, used with the .NET framework. Its main advantages over the original Groestlcoin client include support for exporting blockchain.dat and including a lite wallet mode. This wallet was previously deprecated but has been brought back to life with modern standards.
Works via TOR or SOCKS5 proxy
Can use bootstrap.dat format as blockchain database
Import/Export blockchain to/from bootstrap.dat
Import wallet.dat from Groestlcoin-qt wallet
Export wallet to wallet.dat
Use both groestlcoin-wpf and groestlcoin-qt with the same addresses in parallel. When you send money from one program, the transaction will automatically be visible on the other wallet.
Rescan blockchain with a simple mouse click
Works as a full node and listens to port 1331 (listening port can be changed)
Fast Block verifying, parallel processing on multi-core CPUs
Mine Groestlcoins with your CPU by a simple mouse click
All private keys are kept encrypted on your local machine (or on a USB stick)
Lite - Has a lightweight "thin client" mode which does not require a new user to download the entire Groestlcoin chain and store it
Free and decentralised - Open Source under GNU license
Fixed Import/Export to wallet.dat
Rescan wallet option
Change wallet password option
Address type and Change type options through *.conf file
Import from bootstrap.dat - It is a flat, binary file containing Groestlcoin blockchain data, from the genesis block through a recent height. All versions automatically validate and import the file "grs.bootstrap.dat" in the GRS directory. Grs.bootstrap.dat is compatible with Qt wallet. GroestlCoin-Qt can load from it.
In Full mode file %APPDATA%\Groestlcoin-WPF\GRS\GRS.bootstrap.dat is full blockchain in standard bootstrap.dat format and can be used with other clients.
Groestlcoin Electrum Personal Server aims to make using Electrum Groestlcoin wallet more secure and more private. It makes it easy to connect your Electrum-GRS wallet to your own full node. It is an implementation of the Electrum-grs server protocol which fulfils the specific need of using the Electrum-grs wallet backed by a full node, but without the heavyweight server backend, for a single user. It allows the user to benefit from all Groestlcoin Core's resource-saving features like pruning, blocks only and disabled txindex. All Electrum-GRS's feature-richness like hardware wallet integration, multi-signature wallets, offline signing, seed recovery phrases, coin control and so on can still be used, but connected only to the user's own full node. Full node wallets are important in Groestlcoin because they are a big part of what makes the system be trust-less. No longer do people have to trust a financial institution like a bank or PayPal, they can run software on their own computers. If Groestlcoin is digital gold, then a full node wallet is your own personal goldsmith who checks for you that received payments are genuine. Full node wallets are also important for privacy. Using Electrum-GRS under default configuration requires it to send (hashes of) all your Groestlcoin addresses to some server. That server can then easily spy on your transactions. Full node wallets like Groestlcoin Electrum Personal Server would download the entire blockchain and scan it for the user's own addresses, and therefore don't reveal to anyone else which Groestlcoin addresses they are interested in. Groestlcoin Electrum Personal Server can also broadcast transactions through Tor which improves privacy by resisting traffic analysis for broadcasted transactions which can link the IP address of the user to the transaction. If enabled this would happen transparently whenever the user simply clicks "Send" on a transaction in Electrum-grs wallet. Note: Currently Groestlcoin Electrum Personal Server can only accept one connection at a time.
Use your own node
Uses less CPU and RAM than ElectrumX
Used intermittently rather than needing to be always-on
Doesn't require an index of every Groestlcoin address ever used like on ElectrumX
UPDATED – Android Wallet 7.38.1 - Main Net + Test Net
The app allows you to send and receive Groestlcoin on your device using QR codes and URI links. When using this app, please back up your wallet and email them to yourself! This will save your wallet in a password protected file. Then your coins can be retrieved even if you lose your phone.
Add confidence messages, helping users to understand the confidence state of their payments.
Handle edge case when restoring via an external app.
Count devices with a memory class of 128 MB as low ram.
Introduce dark mode on Android 10 devices.
Reduce memory usage of PIN-protected wallets.
Tapping on the app's version will reveal a checksum of the APK that was installed.
Fix issue with confirmation of transactions that empty your wallet.
Groestlcoin Sentinel is a great solution for anyone who wants the convenience and utility of a hot wallet for receiving payments directly into their cold storage (or hardware wallets). Sentinel accepts XPUB's, YPUB'S, ZPUB's and individual Groestlcoin address. Once added you will be able to view balances, view transactions, and (in the case of XPUB's, YPUB's and ZPUB's) deterministically generate addresses for that wallet. Groestlcoin Sentinel is a fork of Groestlcoin Samourai Wallet with all spending and transaction building code removed.
CNIT 40: DNS Security DNS is crucial for all Internet transactions, but it is subject to numerous security risks, including phishing, hijacking, packet amplification, spoofing, snooping, poisoning, and more. Learn how to configure secure DNS servers, and to detect malicious activity with DNS monitoring. We will also cover DNSSEC principles and deployment. Students will perform hands-on projects deploying secure DNS servers on both Windows and Linux platforms.
CNIT 120 - Network Security Knowledge and skills required for Network Administrators and Information Technology professionals to be aware of security vulnerabilities, to implement security measures, to analyze an existing network environment in consideration of known security threats or risks, to defend against attacks or viruses, and to ensure data privacy and integrity. Terminology and procedures for implementation and configuration of security, including access control, authorization, encryption, packet filters, firewalls, and Virtual Private Networks (VPNs).
CNIT 121 - Computer Forensics The class covers forensics tools, methods, and procedures used for investigation of computers, techniques of data recovery and evidence collection, protection of evidence, expert witness skills, and computer crime investigation techniques. Includes analysis of various file systems and specialized diagnostic software used to retrieve data. Prepares for part of the industry standard certification exam, Security+, and also maps to the Computer Investigation Specialists exam.
CNIT 123 - Ethical Hacking and Network Defense Students learn how hackers attack computers and networks, and how to protect systems from such attacks, using both Windows and Linux systems. Students will learn legal restrictions and ethical guidelines, and will be required to obey them. Students will perform many hands-on labs, both attacking and defending, using port scans, footprinting, exploiting Windows and Linux vulnerabilities, buffer overflow exploits, SQL injection, privilege escalation, Trojans, and backdoors.
CNIT 124 - Advanced Ethical Hacking Advanced techniques of defeating computer security, and countermeasures to protect Windows and Unix/Linux systems. Hands-on labs include Google hacking, automated footprinting, sophisticated ping and port scans, privilege escalation, attacks against telephone and Voice over Internet Protocol (VoIP) systems, routers, firewalls, wireless devices, Web servers, and Denial of Service attacks.
CNIT 126 - Practical Malware Analysis Learn how to analyze malware, including computer viruses, trojans, and rootkits, using disassemblers, debuggers, static and dynamic analysis, using IDA Pro, OllyDbg and other tools.
CNIT 127 - Exploit Development Learn how to find vulnerabilities and exploit them to gain control of target systems, including Linux, Windows, Mac, and Cisco. This class covers how to write tools, not just how to use them; essential skills for advanced penetration testers and software security professionals.
CNIT 128 - Hacking Mobile Devices Mobile devices such as smartphones and tablets are now used for making purchases, emails, social networking, and many other risky activities. These devices run specialized operating systems have many security problems. This class will cover how mobile operating systems and apps work, how to find and exploit vulnerabilities in them, and how to defend them. Topics will include phone call, voicemail, and SMS intrusion, jailbreaking, rooting, NFC attacks, malware, browser exploitation, and application vulnerabilities. Hands-on projects will include as many of these activities as are practical and legal.
CNIT 129S: Securing Web Applications Techniques used by attackers to breach Web applications, and how to protect them. How to secure authentication, access, databases, and back-end components. How to protect users from each other. How to find common vulnerabilities in compiled code and source code.
CNIT 140: IT Security Practices Training students for cybersecurity competitions, including CTF events and the Collegiate Cyberdefense Competition (CCDC). This training will prepare students for employment as security professionals, and if our team does well in the competitions, the competitors will gain recognition and respect which should lead to more and better job offers.
Florida State University's - Offensive Network Security This class allows students to look deep into know protocols (i.e. IP, TCP, UDP) to see how an attacker can utilize these protocols to their advantage and how to spot issues in a network via captured network traffic. The first half of this course focuses on know protocols while the second half of the class focuses on reverse engineering unknown protocols. This class will utilize captured traffic to allow students to reverse the protocol by using known techniques such as incorporating bioinformatics introduced by Marshall Beddoe. This class will also cover fuzzing protocols to see if the server or client have vulnerabilities. Overall, a student finishing this class will have a better understanding of the network layers, protocols, and network communication and their interaction in computer networks.
Florida State University's - Offensive Computer Security The primary incentive for an attacker to exploit a vulnerability, or series of vulnerabilities is to achieve a return on an investment (his/her time usually). This return need not be strictly monetary, an attacker may be interested in obtaining access to data, identities, or some other commodity that is valuable to them. The field of penetration testing involves authorized auditing and exploitation of systems to assess actual system security in order to protect against attackers. This requires thorough knowledge of vulnerabilities and how to exploit them. Thus, this course provides an introductory but comprehensive coverage of the fundamental methodologies, skills, legal issues, and tools used in white hat penetration testing and secure system administration.
NYU Tandon School of Engineering - OSIRIS Lab's Hack Night Developed from the materials of NYU Tandon's old Penetration Testing and Vulnerability Analysis course, Hack Night is a sobering introduction to offensive security. A lot of complex technical content is covered very quickly as students are introduced to a wide variety of complex and immersive topics over thirteen weeks.
Rensselaer Polytechnic Institute - Malware Analysis This course will introduce students to modern malware analysis techniques through readings and hands-on interactive analysis of real-world samples. After taking this course students will be equipped with the skills to analyze advanced contemporary malware using both static and dynamic analysis.
The importance of being mindful of security at all times - nearly everyone is one breach away from total disaster
This is a long one - TL;DR at the end!
If you haven't heard yet: BlankMediaGames, makers of Town of Salem, have been breached which resulted in almost 8 million accounts being leaked. For most people, the first reaction is "lol so what it's just a game, why should I really care?" and that is the wrong way to look at it. I'd like to explain why everyone should always care whenever they are part of a breach. I'd also like to talk about some ways game developers - whether they work solo or on a team - can take easy steps to help protect themselves and their customers/players. First I'd like to state that there is no practical way to achieve 100% solid security to guarantee you'll never be breached or part of a breach. The goal here will be to get as close as possible, or comfortable, so that you can rest easy knowing you can deal with problems when they occur (not if, when).
Why You Should Care About Breaches
The sad reality is most people re-use the same password everywhere. Your email account, your bank account, your steam account, your reddit account, random forums and game websites - you get the idea. If you haven't pieced it together yet the implication is that if anyone gets your one password you use everywhere, it's game over for you - they now own all of your accounts (whether or not they know it yet). Keep in mind that your email account is basically the holy grail of passwords to have. Most websites handle password changes/resets through your email; thus anyone who can login to your email account can get access to pretty much any of your accounts anywhere. Game over, you lose.
But wait, why would anyone want to use my password? I'm nobody!
It doesn't matter, the bad guys sell this information to other bad guys. Bots are used to make as much use of these passwords as possible. If they can get into your bank they might try money transfers. If they get into your Amazon account they might spin up $80,000 worth of servers to mine Bitcoin (or whatever coin is popular at the time). They don't care who you are; it's all automated. By the way, according to this post (which looks believable enough to be real) this is pretty much how they got into the BMG servers initially. They checked for usernames/emails of admins on the BMG website(s) in previous breach dumps (of which there are many) and found at least one that used the same password on other sites - for their admin account! If you want to see how many of your accounts are already breached check out Have I Been Pwned - I recommend registering all of your email addresses as well so you get notified of future breaches. This is how I found out about the Town of Salem breach, myself.
How You Can Protect Yourself
Before I go into all the steps you can (and should) take to protect yourself I should note that security is in a constant tug of war with convenience. What this means is that the more security measures you apply the more inconvenienced you become for many tasks. It's up to you to decide how much is too much either way. First of all I strongly recommend registering your email(s) on https://haveibeenpwned.com/ - this is especially important if your email address is associated to important things like AWS, Steam developer account, bank accounts, social media, etc. You want to know ASAP when an account of yours is compromised so you can take steps to prevent or undo damage. Note that the bad guys have a head start on this!
You probably need to have better password hygiene. If you don't already, you need to make sure every account you have uses a different, unique, secure password. You should change these passwords at least once a year. Depending on how many accounts you have and how good your memory is, this is your first big security vs convenience trade-off battle. That's easily solved, though, by using a password manager. You can find a list of password managers on Wikipedia here or you can search around for some comparison articles. Some notable choices to consider:
1Password - recommend by Troy Hunt, creator of Have I Been Pwned
LastPass - I use this at work and it's generally good
BitWarden - free and open source! I use this at home and in some ways it's better than LastPass
KeePass (and forks) - free, open source, and totally offline; if you don't trust "the cloud" you can trade away some more convenience in exchange for taking full responsibility of your password security (and backups)
Regardless of which one you choose, any of them is 100x better than not using one at all.
The problem with all these passwords is that someone can still use them if they are found in a breach. Your passwords are only as strong as the website you use them on. In the case of the BMG breach mentioned above - all passwords were stored in an ancient format which has been insecure for years. It's likely that every single password in the breach can be reversed/cracked, or already have been. The next step you need to take is to make it harder for someone else to login with your password. This is done using Multi-Factor Authentication (or Two-Factor Authentication). Unfortunately not every website/service supports MFA/2FA, but you should still use it on every single one that does support it. You can check which sites support MFA/2FA here or dig around in account options on any particular site. You should setup MFA/2FA on your email account ASAP! If it's not supported, you need to switch to a provider that does support it. This is more important than your bank account! All of the big email providers support it: GMail, Outlook.com, Yahoo Mail, etc. The type of MFA/2FA you use depends on what is supported by each site/service, but there is a common approach that is compatible on many of them. Most of them involve phone apps because a phone is the most common and convenient "thing you have" that bad guys (or anyone, really) can't access easily. Time-based One-time Password or TOTP is probably the most commonly used method because it's easy to implement and can be used with many different apps. Google Authenticator was the first popular one, but it has some limitations which continue the security vs convenience battle - namely that getting a new phone is a super huge chore (no backup/restore option - you have to disable and setup each site all over again). Many alternatives support cloud backup which is really convenient, though obviously less secure by some measure. Notable choices to consider:
Authy - probably the first big/popular one after Google Authenticator came out (I think) - NOTE: They let you use it on your desktop/browser, too, but this is TOO much convenience! Don't fall for that trap.
LastPass Authenticator - conveniently links up with a LastPass account, some sites support extra features (like not needing to type a code, just answer a phone notification)
Yubikey - A real physical MFA device! Some models are compatible with phones, too.
Duo - this one is more geared towards enterprise, but they have a free option
Some sites/services use their own app, like Blizzard (battle.net) and Steam, and don't allow you to use other ones. You will probably have a few apps on your phone when all your accounts are setup, but it's worth it. You'll definitely want to enable it on your password manager as well if you chose a cloud-based one. Don't forget to save backup codes in an actual secure location! If you lose your backup codes and your auth app/physical key you will be locked out of accounts. It's really not fun recovering in that situation. Most recommendations are to print them and put in a fireproof safe, but using some other secure encrypted storage is fine. There is such a thing as bad MFA/2FA! However, anything is at least better than nothing. A lot of places still use SMS (text messaging) or e-mail for their MFA/2FA implementation. The e-mail one has the most obvious flaw: If someone gets into your email account they have defeated that security measure. The SMS flaws are less obvious and much less likely to affect you, but still a risk: SMS is trivial to intercept (capture data over the air (literally), clone your SIM card data, and some other methods). Still, if you're not a person of interest already, it's still better than nothing.
What Does This Have To Do With GameDev?
Yeah, I do know which subreddit I'm posting in! Here's the section that gets more into things specific to game development (or software development in general).
Secure Your Code
Securing your code actually has multiple meanings here: Securing access to your code, and ensuring your code itself is secure against exploitation. Let's start with access since that's the easier topic to cover! If you're not already using some form of Source Control Management (SCM) you really need to get on board! I'm not going to go in depth on that as it's a whole other topic to itself, but I'll assume you are using Git or Mercurial (hg) already and hosting it on one of these sites (or a similar one):
First, ensure that you have locked down who can access this code already. If you are using private repositories you need to make sure that the only people who have access are the people who need access (i.e. yourself and your team). Second, everyone should have strong passwords and MFA/2FA enabled on their accounts. If 1 person on the team does not follow good security practices it puts your whole project at risk! So make sure everyone on the team is following along. You can also look into tools to do some auditing and even automate it so that if anyone's account becomes less secure over time (say they turned off MFA one day) they would automatically lose their access. Additionally you should never commit secrets (passwords, API keys, tokens, social security numbers, etc) to your code repository. Probably 90% of cases where people have their AWS/Google Cloud/Azure accounts compromised and racking up huge bills for bitcoin mining is due to having their passwords/keys stored in their git repo. They either accidentally made it public or someone got access to the private repo through a compromised account. Never store sensitive information in your code repository! Next topic: Securing your code from vulnerabilities. This one is harder to talk about for game dev as most engines/frameworks are not as susceptible (for lack of a better word) to these situations as others. In a nutshell, you need to keep track of the following:
Is my code doing anything "dangerous"? (system-level stuff, memory access, saving passwords anywhere)
Could someone get the keys to the kingdom (API key, server password, etc) by just opening Cheat Engine and looking at memory values? Or doing a strings/hex edit/decompile/etc on my game executable?
Am I using outdated libraries/framework/engine? Do they have any known security bugs?
Secure Your Computer
I'm not going to go in depth on this one because at this point everyone should have a handle on this; if not there are limitless articles, blogs, and videos about the how/what/why. In summary: Keep everything updated, and don't open suspicious links.
Lock your computer when idle - use a password (or PIN or face unlock or whatever your OS uses) - no one should ever be able to walk up to your computer and use it if you're not looking, nor should they be able to get in if they grabbed your closed laptop off the table at starbucks (thanks u/3tt07kjt for reminding me of this one)
Use full disk encryption (especially on laptops)
Update your OS for security updates ASAP
Use anti-virus (yes, Windows Defender is fine) and keep it updated
Update your web browser ALWAYS (this is your 99% chance attack vector, so don't postpone it!)
Don't install browser extensions that you don't need - a LOT of extensions are either malware from the start or become malware later (my favorite emoji extension started mining bitcoins, FFS!) - check reviews regularly after extensions update
DO use adblock and privacy extensions - ads are a common attack vector - I recommend uBlock Origin and Privacy Badger at a minimum (note that some legit sites can break and so you'll have to fiddle with settings or whitelist)
Don't open suspicious or unknown links on e-mail, social media, discord, etc (be sure to hover over the links in this post before clicking them)
Don't open attachments, ever - unless you were expecting it from that person at that time
Don't fill out ANY forms (comments, login, registration, etc) on websites that don't have HTTPS (secure) connection - your browser will show this in the address bar, usually
In general, be suspicious of everything that comes from people you don't know - and even from people you do know if it was unexpected
E-Mail is (probably) the least secure form of communications ever invented - so try not to use it for sensitive things
Secure Your Website
I will have to add more to this later probably, but again there are tons of good articles, blogs, and videos on these topics. Hopefully the information in this section is enough to get you on the right track - if not feel free to ask for more info. Lots of guides can be found on Digital Ocean's site and they are relevant even if you don't use DO for your servers.
Use HTTPS (SSL/TLS) secure connections - it's FREE and EASY thanks to Let's Encrypt
KEEP EVERYTHING UPDATED - automate as much as you can
If you have control over the server, you MUST update the OS, the web server, and any backend application servers/languages/frameworks involved. Equifax breach was due to having out of date server software. BMG breach was worsened by having out of date server software. YOU MUST STAY UPDATED, ALWAYS
Don't store sensitive personal information - it's a huge pain to be PCI compliant, it's a huge fine if you mess it up - avoid storing any customer information that you don't actually need (see also: GDPR )
Do not allow access to SSH/Remote desktop/Database services from the whole world; the general public should only ever be able to reach ports 80 and 443 on your web server (and 80 should permanently redirect to HTTPS)
Use SSH keys instead of passwords on Linux servers
Don't run your own email server - it's just not worth it; use google apps for business, office 365, zoho, or something else for business email
Secure your domain registrar account! Don't lose your domain to a bad password or lack of MFA/2FA or an old email address! If your registrar doesn't support actual security then transfer to one that does. (namecheap, namesilo, google domains, amazon aws route53, even godaddy, the absolutely worst web company, has good security options)
A lot of this will apply to your game servers as well - really any kind of server you expect to setup.
That's it, for now
I ran out of steam while typing this all up after a couple hours, but I may revisit it later to add more info. Feel free to ask any questions about any of these topics and I'll do my best to answer them all.
TL;DR (y u words so much??)
Use a password manager so you can have different, random, secure passwords on every account on every website/service/game
Use MFA/2FA on every account, if possible
Lock your computer when idle/away
Use full disk encryption on laptops
Update your operating system (we all hate Windows Update, but it really is for our own good)
Use anti-virus (Windows Defender is fine)
Update your browser
Use good adblockeprivacy blocker browsers extensions
Don't use browser extensions that you don't really need (they could be a trojan horse of bitcoin mining later)
Don't trust anything sent by anyone, unless you were expecting it and know it's safe
E-mail is the least secure form of communications in use these days; don't trust it for sensitive things
Use source control for your game code (git, mercurial, etc)
Lock down access to your source code
Don't put secrets (passwords, API keys/tokens, social security numbers, credit card numbers) in your code repository
Don't do dumb things like store your AWS keys in your game for players to just find with simple tools
Check your code dependencies for security bugs, update them when needed
Use HTTPS on your website
Update your web server OS and software
Use secure password storage (don't reinvent this wheel, it's been solved by way smarter people)
Use SSH keys instead of passwords for Linux servers
Use a firewall to block the world from getting in with SSH/Remote desktop/database direct connections
Only allow your own IP address (which can change!) into the server for admin tasks
Don't run your own email server, let someone who knows what they are doing handle that for you
Secure your domain registrar account, keep email address up to date
... in general... in general... in general... I sure wrote those 2 words a lot.
Why Should I Trust This Post?
Hopefully I have provided enough information and good links in this post that you can trust the contents to be accurate (or mostly accurate). There is certainly enough information to do some searches on your own to find out how right or wrong I might be about these things. If you want my appeal to authority answer: I've been working at a major (network/computer) security company for almost 7 years as a software developer, and I've had to put up with pretty much every inconvenience brought on by security. I've also witnessed the aftermath of nearly every type of security failure covered in this post, via customers and the industry at large. None of the links I used are related to my employer or its products. Edit: Fixed some typos and added some more links More edit: added a few more points and links
This is a throwback to the mega Email provider post from July 2017. I figured we should revisit the list and update it for 2019. I already went through and removed anything from the list that was dead. Below is most of the original thread with a few new things added. The /onions community input is need to help make it even better! I cannot stress how important it is to use PGP. PGP gives you up to 4096 bits of RSA encryption. When using PGP even the email provider that you are using can't see the contents of your emails. If you need practice, check out /gpgpractice.
Why is it important to have email over Tor? Ask Ross Ulbricht, alleged creator of criminal marketplace Silk Road!
The FBI caught the man accused of creating Silk Road -- the shadowy e-commerce site it describes as "the most sophisticated and extensive criminal marketplace on the Internet today" -- after he allegedly posted his Gmail address online, according to court documents.
Please comment below if you know any others that I haven't listed and I will add them to the list. Once this list is finalized, I will be putting it into the /onions wiki in an entire Email section. Thanks!
Paramountdax Exchange — The first OTC (over-the-counter) crypto trading desk in Europe
The majority of crypto exchanges today provide only the basic features — such as buy and sell order — which are not good enough for traders who want to implement order limits and stop loss orders. The trading fee on traditional crypto exchanges is very high. With each trade you make, the specific percentage of your order activity is deducted as exchange commission for the trade even if you are in loss. By providing OTC trading, ParamountDax proves out that it is not only the exchange for the community but that it could serve institutional traders or the so-called whales as well. It provides a layer of insulation and security during the buy and sell processes so that the parties involved aren’t buffeted by the market fluctuations while the transaction is taking place. OTC Trading on ParamountDax The ParamountDax exchange also features stop-limit options. They minimize your loss and maximize your stop and limit orders to help ensure you lock in your profits and stem the risk when your respective profit and risk targets are met. To start trading, you would need transfer funds from your Main account to your Trading account. Just hit a blue arrow between the accounts. Specify the necessary amount and click “Transfer”. Before starting buying or selling OTC, the quite simple steps to follow are required In order to login to the ParamountDax website, a user won’t be allowed simply through a ‘login + password’ access type. ParamountDax will enforce a secure 2FA protection for the client. By default, weak 2FA like OTP/Google Authenticator / SMS won’t be authorized or will be only temporarily permitted, since these methods are vulnerable to phishing attacks. In order to ensure the password meant as strong and difficult to guess as possible, users are allowed to generate current excess code that exceed the minimum of 8 characters. Moreover, passwords have to be a combination of case sensitive letters, numbers, and special symbols. If you are placing an ad to sell Bitcoins or other cryptocurrencies you will have to deposit the amount you are selling in an escrow portfolio. After both parties agree, the amount will be released and both parties will receive their fiat tokens /currency respectively.
Benefits of trading at ParamountDax OTC
You have many advantages while using our API and our goal is to keep improving. Our developers and product managers have many years of expertise with financial software. Their deep experience in the trading world is the very thing which allows us to give you software and features that are well thought out and focus on finding the best solutions for traders. We’re working hard to bring you the best trading experience. There are some awesome features we’ve been working on. Not to pat ourselves on the back, but many of our competitors have not offered these options yet. At the same time we have found they are helpful while using your own software to trade. In order to solve the liquidity issue and allow users to instantly trade their digital assets, ParamountDax will be adding its order book to a collective pool server — an order book shared among various crypto exchanges. We aspire to allow brokers to trade with each other via a dealer network. The OTC feature allows large crypto assets sale and purchase with no need for a lawyer as the exchange is regulated, therefore it makes institutional trading easy for customers. ParamountDax commission for OTC trading equals to 0,5%. In case of conflict between Traders, users can upload any proof of payment documents on OTC platform to clarify the proper position. We follow the two-way approach to ensure the security of both users and the exchange. For every new withdrawal, users need to validate their IP address through the registered email. As a special bonus, ParamountDAX OTC gives opportunity for traders to negotiate using the private chat which is immediately created when trade process starts. ParamountDax is the intermediary and offers protection against ill-intentioned users. We have been getting awesome feedback from you, guys, however if there are some more improvements to our software to help you along, do please get in touch! Website : https://paramountdax.io/ View MVP : https://staging.paramountdax.com ParamountDax community : Telegram : https://t.me/ParamountDaxICO Twitter : https://twitter.com/ParamountDax Facebook:https://www.facebook.com/Paramountdax-2024636494500768 Bitcointalk: https://bitcointalk.org/index.php?topic=5137789.0 Reddit: https://www.reddit.com/ParamountDax/ Medium: https://medium.com/@paramountdax
A short Background 2008 was the worst financial crisis the world had experience since the great depression. The efforts of banks worldwide were not enough to prevent its occurrence. Shortly after, someone by the name of Satoshi Nakamoto offered an alternative solution. A digital currency that removes the need for a central bank. His proposal written in the Bitcoin white paper, is summarized below:
A secure, decentralized network.
A system with economic properties.
No need for banks or rule makers.
Instant transactions without a need of a third party or government approval.
Bringing financial services to the unbanked 2.5 billion people.
Total financial freedom. No one can freeze your accounts.
Low transaction costs. No ridiculously high transaction fees.
A currency with finite amount where no one can print money whenever they want.
Bitcoin In 2009, when Satoshi Nakamoto launched Bitcoin, the network consisted of computers (in crypto terms, these are called Nodes) to approve transactions, movements of data along the chain. This allows for everyone willing to become a participant, creating a decentralized global network. Allowing for a decentralized currency, free of the control of politicians, or institutions. The rules can only be changed if 51% of the network agrees on it. This way the network is completely democratized and resistant to hacking attacks. Unlike today’s financial institutions, no one can freeze your account or prevent you sending money. You are the only person who truly holds your wealth. It is an open source project. Anyone can see the code and offer or discuss changes with the community. On the other hand, anyone participating to the network with computational power gets incentives or pay, with a fractional amount of BTC. Blockchain The core of a secure decentralized network like Bitcoin, lies the Blockchain technology. To put it simply, the blockchain is like a series of Lego, connected to each other by linking information, called transactions. These transactions contain the following data sender, receiver and the unique signature of the sender. The data will be converted into “hash” before being saved into a block. The bitcoin hash is generated using a set of cryptographic functions called sha256. This way the information is encrypted, is compressed and saved in the block. Additionally, each block in the chain, contains the information from the block before it. This ensures that if someone tries to maliciously modify information in a block, all the block following this attempt will be changed, making it easier to spot. Each block includes the information from the previous block. If someone wants to maliciously change the information in one block that change the complete result of all following blocks. In this type of network there is only one blockchain, and all the information is kept in a public ledger which is shared amongst all the participating networks. For the blockchain to be valid, more than 50% of the participants (nodes and their computational power) must agree with it. Bitcoin Today (2018) Until today many, many, events have happened. The network has grown massively. The underlying code is improved in many ways. There are more and more developers and investors that have entered the cryptocurrency space. Currently there are proposed changes being developed to the Bitcoin network that will make bitcoin rival the centralized networks of today (Visa, Mastercard), while significantly lowering the cost of these transaction. Many alternative cryptocurrencies have been created along the way, improving some of the aspects of the bitcoin and focusing on certain applications, in the crypto-space, we call them altcoins. WHY VERGE The way that Bitcoin function, has severe flaws with regards to privacy:
Public Ledger: The transaction information is public, meaning, that transactions can be linked to a person.
IP Leakage: A persistent and motivated attacker will be able to associate your IP address with your bitcoin transaction.
Due to the above reasons, it was clear that there would be a need for a privacy coin. Different coins were then created that had this problem in mind. They were ‘too private’ in the sense that they completely by-passed the public ledger. The public ledger allows merchant to provide proof of transactions, which is important for bookkeeping. Enter Verge Currency, formerly Dogecoindark; which offers transaction on the ledger, both public and private. Allowing the user to choose if the transactions are public or private. VERGE CURRENCY 2014 saw the birth of Dogecoin Dark; in 2016, it was rebranded to Verge Currency. Verge improves upon the original Bitcoin blockchain and aims to fulfill its initial purpose of providing individuals and businesses with a fast, efficient and decentralized way of making direct transactions while maintaining your privacy. What is the Verge Currency Mission? Verge Currency aims to empower people around the globe using blockchain in everyday life and makes it possible for people to engage in transactions quickly, efficiently and privately. With Verge, business and individuals now have flexible options for sending and receiving payments. Verge Currency also offer helpful integrations and tools that enable them to handle large scale transactions between merchants and small-scale private payments. Is Verge Currency a private company and how is it funded? Following in the spirit of Bitcoin, Verge is an open-source software, and a community. It is not a company, never had an ICO. The development is entirely funded by the community and the developers. Currently Verge is looking into setting up an official Verge merchandise store, and an Official Verge mining pool, for multiple algorithms. Tech General technical capabilities of XVG blockchain:
PoW (Proof of Work)
Scrypt, X17, Lyra2rev2, myr-groestl and blake2s
Max Coin Supply
16.5 billion XVG
15.2 billion XVG
Tx (Transaction) Speed
Tps (Transactions per sec.)
100 (Will be ~2000 with RSK)
Tor + I2P Networks
fully obfuscated IP address / User's Location is hidden
It enables users to anonymously receive funds to their wallet. Therefore third parties are no longer able to track receivers addresses, nor are they able to combine official wallet addresses with their stealth addresses.
Community Verge is a community-driven project. The community is the pillar of Verge, from the past to the future, the community built Verge. The community or Vergefam connects everyone from around the world, regardless of cultural background. The common vision is to provide everyone access to financial freedom, and the choice of privacy while transacting. Below you can find the Verge Telegram communities from around the world;
Mass Adoption Low fees, quick transactions, high volume in circulation, multiplatform support, Wraith protocol are the ingredients that make Verge perfectly positioned for mass adoption. Transact on the public ledger for everyday purchases or stay private if you wish so. Getting Started You can find the matching instructions as below:
Hey guys, I thought I would put together an in-depth tour of the Gridcoin wallet software for all of our recent newcomers. Here I'll be outlining all the features and functions the windows GUI wallet has to offer, along with some basic RPC command usage. I'll be using the windows wallet as an example, but both linux and macOS should be rather similar. I'll be including as many pictures as I can as embedded hyperlinks. Edit: Note that since I originally made this there has been a UI update, so your client will be different colors but all the button locations are in the same place. This is my first post like this, so please forgive me if this appears a little scatter-brained. This will not cover the mining setup process for pool or solo miners. When you launch the wallet software for the first time you should be greeted with this screen.
If you're a pool miner or investor, press cancel.
If you're a solo miner, enter your email you used to sign up for projects and press OK.
If you're not sure or haven't decided yet, press cancel. We can come back to this later.
After that prompt, you should be left sitting on the main overview tab with several fields on it. From top to bottom:
Available: All coins available to be sent or staked (I'll cover this term later).
Stake: All coins that are currently staking.
Unconfirmed: All coins that have been received and have not yet received 110 confirmations.
Total: All coins in your wallet. (The sum of the above fields)
Blocks: How many blocks your client has in it's chain. Your wallet just started syncing with the network so this number will be low.
Difficulty: How difficult it is for someone to stake the next block.
Net Weight: An estimate for how many coins are staking on the entire network.
Coin Weight: How many of your coins that are currently staking.
Magnitude: A quantifier for how much work you put in mining. For solo miners only. For pool miners, this value will always be 0.
Project: Displays the projects you're working on, one at a time. For solo miners only. For pool miners, this will always say "INVESTOR".
CPID: Cross Project Identifier. Used to keep track of users across projects. For solo miners only. For pool miners, this will always say "INVESTOR".
Status: Displays various status messages.
Current Poll: Displays the latest poll.
Client Messages: Displays various client messages.
Now onto the other tabs on the left side. Currently we're on the Overview tab, lets move down to the Send tab. This tab it pretty self-explanatory, you use it if you want to send coins, but I'll go over the fields here:
Pay To: Enter a valid gridcoin address to send coins too. Gridcoin addresses always start with an S or and R.
Label: Enter a label here and it will put that address in your "address book" under that label for later use. You can leave it blank if you don't want it in your address book.
Message: Enter a message here if you want it attached to your transaction.
Amount: How many coins you want to send.
Add Attachment: Leave this alone, it is broken.
Track Coins: This doesn't do anything.
Now down to the Receive tab. Here you should have a single address listed. If you double click on the label field, you can edit it's label.
New: Generate a new address.
If you click on an address, the rest of the options should be clickable.
Copy: Copy the selected address to your clipboard.
Show QR Code: Show a scan-able QR code for the selected address.
Sign Message: Cryptographically sign a message using the selected address.
The Transactions tab is pretty boring considering we have no transactions yet. But as you can see there are some sorting tools at the top for when you do have transactions listed.
ADDRESS BOOK TAB
The Address Book is where all the addresses you've labeled (that aren't yours) will show up.
Verify Message: Verifies a message was signed by the selected address.
The rest of the functions are similar to the functions on the Receive tab.
Onto the Voting tab. There wont be any polls because we aren't in sync yet.
Reload Polls: Pretty self-explanatory, I've never had to use this.
Load History: By default, the wallet will only display active polls. If you want to view past polls you can use this.
Create Poll: You can create a network-wide poll. You must have 100,000 coins as a requirement to make a poll. (Creating a poll does not consume the coins)
Display coin control features (experts only!): This allows you to have a great deal of control over the coins in your wallet, check this for now and I'll explain how to use it further down. Don't forget to click "Apply".
ENCRYPTING YOUR WALLET
Now that all of that is out of the way. The first thing you'll want to do is encrypt your wallet. This prevents anybody with access to your computer from sending coins. This is something I would recommend everyone do. Go to Settings > Encrypt Wallet and create a password. YOU CANNOT RECOVER YOUR COINS IF YOU FORGET YOUR PASSWORD. Your wallet will close and you will have to start it up again. This time when it opens up, you should have a new button in the bottom left. Now if you want to stake you will have to unlock your wallet. Notice the "For staking only" box that is checked by default. If you want to send a beacon for solo mining or vote, you will need to uncheck this box.
GETTING IN SYNC AND ICONS
Before we continue, Let's wait until we're in sync. Depending on your internet speeds, this could take from several hours to over a day or 2. This can be sped up by using Advanced > Download Blocks, but this can still take several hours. This is what an in-sync client should look like. Notice the green check to the right of the Receive tab. All of these icons give you information when you hover your mouse over them. The lock The arrow tells you if you're staking. If you aren't staking, it will tell you why you're not staking. If you are staking it will give you an estimated staking time. Staking is a very random process and this is only an estimate, not a countdown. The connection bars tell you how many connections to the network you have. The check tells you if you're in sync.
WHAT IS STAKING?
Now I've said "stake" about a million times so far and haven't explained it. Gridcoin is a Proof of Stake (PoS) coin. Unlike bitcoins Proof of Work (PoW), PoS uses little system resources, so you can use those resources for scientific work. PoS works by users "Staking" with their balance. The higher the balance, the higher the chance to create, or "stake" a block. This means you need to have a positive balance in order to stake. Theoretically, you can stake with any amount over 0.0125 coins, but in practice it's recommended to have at least 2000 coins to reliably stake. Staking is important for solo miners, because they get paid when they stake. Pool miners don't need to stake in order to get paid however. So if you want to solo mine, you'll need to buy some coins from an exchange or start in the pool first and move to solo when you have enough coins. In addition to Research Rewards for miners, anyone who holds coins (solo miners, pool miners, and investors) gets 1.5% interest annually on top of your coins. So it can be beneficial for pool miners to stake as well. Here is a snippet of what a research rewards transaction looks like from my personal wallet. I have a label on that address of "Payout address" as you can see here.
UTXOS AND COIN CONTROL
At this point you'll need some coins. You can use one of our faucets like this one or this one to test coin control out. First let me explain what a UTXO is. UTXO stands for Unspent Transaction Output. Say you have an address with 0 coins in it, and someone sends you 10 coins like I've done here. Those 10 coins are added to that address in the form of a UTXO, so we have an address with one 10 coin UTXO in it. Now we receive another 5 coins at the same address, like so. Now we have an address with one 10 coin UTXO and one 5 coin UTXO. But how do we view how our addresses are split up into different UTXOs? Earlier we checked the "Display coin control features" box in Settings > Options > Display. Once that's checked you'll notice there's another section in the Send tab labeled "Coin Control Features". If you click the "Inputs" button, you'll get a new window. And look, there's our 2 UTXOs. All UTXOs try to stake separately from each other, and remember that the chance a UTXO has to stake is proportional to it's size. So in this situation, my 10 coin UTXO has twice the chance to stake as my 5 coin UTXO. Now wallets, especially ones that make a lot of transactions, can get very fragmented over time. I've fragmented my wallet a little so I can show you what I'm talking about. How do we clean this up? We can consolidate all this into one UTXO by checking all the boxes on the left and selecting OK. Now pay attention to the fields on the top:
Quantity: The total amount of UTXOs we have selected.
Amount: The total amount of coins we have selected.
Fee: How much it would cost in fees to send all those UTXOs (more UTXOs = more transaction data = more fees)
After Fee: Amount - Fees.
Bytes: How large the transaction is in bytes.
Priority: How your client would prioritize making a transaction with this specific set of UTXOs selected had you not used coin control.
Low Output: If your transaction is less than 0.01 coins (I think).
custom change address: You can set the address you get your change back at, by default it will generate a new address.
So let's fill out our transaction so we end up with 1 UTXO at the end. In "Pay To:" Just put any address in your wallet, and for the amount put what it has listed in the "After Fee" Field. Just like this. Notice how we get no change back. Now click "Send", we'll be prompted to enter our passphrase and we're asked if we want to pay the fee, go ahead and click "Yes". Now if we go back to the Overview tab we get this funky icon. If you hover your mouse over it, it says "Payment to yourself", and the -0.0002 GRC is the network transaction fee. (Ignore the first one, that was me fragmenting my wallet) Now if we look at the Coin Control menu, we can see that we've slimmed our wallet down from 7 UTXOs to 1. Now why would you want to use coin control? 2 Situations:
UTXOs less than 0.0125 coins cannot stake. So you can combine a lot of tiny, useless UTXOs into 1 bigger one that can stake.
After a UTXO stakes, it cannot stake for another 16 hours. So if you have 1 large UTXO that is big enough to stake more than once every 16 hours, you can split it into smaller UTXOs which can allow you to stake slightly more often.
By default, the wallet will always generate a new address for change, which can make your wallet get very messy if you're sending lots of transactions. Keep in mind that more UTXOs = larger transactions = more fees.
Sidenote - When you stake, you will earn all research rewards owed reguardless of which UTXO staked. However, you'll earn the 1.5% interest for that UTXO. Not your whole wallet.
A fork is when the network splits into multiple chains, with part of the network on each chain. A fork can happen when 2 blocks are staked by different clients at the same time or very close to the same time, or when your client rejects a block that should have been accepted due to a bug in the code or through some other unique circumstance. How do I know if I'm on a fork? Generally you can spot a fork by looking at the difficulty on your Overview tab. With current network conditions, if your difficulty is below 0.1, then you're probably on a fork. You can confirm this by comparing your blockhash with someone elses, like a block explorer. Go to [Help > Debug Window > Console]. This is the RPC console, we can use to do a lot of things. You can type help to get a list of commands, and you can type help [command you need help with] (without the brackets) to get information on a command. We'll be using the getblockhash [block number] command. Type getblockhash [block number] in the console, but replace [block number] with the number listed next to the "Blocks:" field on the Overview tab. This will spit out a crazy string of characters, this is the "blockhash" of that block. Now head over to your favorite block explorer, I'll be using gridcoinstats. Find the block that you have the hash for, use the search bar or just find it in the list of blocks. Now compare your hash with the one gridcoinstats gives you. Does it match? If it matches, then you're probably good to go. If it matches but you still think you're on a fork, then you can try other block explorers, such as gridcoin.network or neuralminer.io. If it doesn't match, then you need to try to get off that fork. How do I get off a fork?
Just wait for an hour or two. 95% of the time your client is able to recover itself from a fork given a little time.
Restart the client, wait a few minutes to see if it fixes itself. If it doesn't restart again and wait. Repeat about 4 or 5 times.
Find where the fork started. Using the getblockhash command, go back some blocks and compare hashes with that on a block explorer so you can narrow down what the last block you and the block explorer had in common. Then use reorganize [the last block hash you had in common]. Note that reorganize takes a blockhash, not a block number.
A listening node is a node that listens for blocks and transactions broadcasted from nodes and forwards them on to other nodes. For example, during the syncing process when you're getting your node running for the first time, you're downloading all the blocks from listening nodes. So running a listening node helps support the network. Running a gridcoin listening node is simple. All you need to do is add listen=1 to your gridcoinresearch.conf and you need to forward port 32749 on your router. If you don't know how to port forward, I'd suggest googling "How to port forward [your router manufacturer]".
Hey guys! I'm fairly new to this sub and to having a home lab in general and I found this community to be so kind and helping, I wanted to give back what I've learned. I'm seeing a lot of questions asked around on improvements and on what to do with x extra hardware so I thought it would be nice to have a thread to regroup that.
I'll put here some stuff I gathered and the most common questions I've seen, feel free to contribute and i'll update the post along.
oVirt -> Viurtualization
Hurrcane Electric DNS -> Dynamic DNS
No-IP -> DynamicDNS
SpiceWorks -> Misc
ERPXE -> Backup
Homelab Dashboard Posts about dashboards have been growing lately and here are some of the best that were kind enough to provide us with their sources.
Pi-hole Prevents ads from even reaching you by blocking dns queries. Works as a relay between your isp's dns server (or whichever you choose). Can also work as a local dns.
RetroPie From their website: The RetroPie Project is a collection of works that all have the overall goal to turn the Raspberry Pi into a dedicated retro-gaming console.
raspnode Tutorials for installing cryptocurrency nodes on a Raspberry Pi. Participate in the Bitcoin, Litecoin, or Ethereum network. Full nodes, SPV wallets, cold storage, offline transaction signing.
flightradar24 is a flight tracking service that provides you with real-time info about thousands of aircraft around the world.
The Plane Finder is the easiest and most accurate way to share your ADS-B and MLAT data with us.
PiAware is the world's largest flight tracking data company and provides over 10,000 aircraft operators and service companies as well as over 12,000,000 passengers with global flight tracking solutions.
CouchPotato is an wesome PVR for usenet and torrents. Just fill in what you want to see and CouchPotato will add it to your "want to watch"-list. Every day it will search through multiple NZBs & Torrents sites, looking for the best possible match. If available, it will download it using your favorite download software.
SickBeard is a PVR for newsgroup users (with limited torrent support). It watches for new episodes of your favorite shows and when they are posted it downloads them, sorts and renames them, and optionally generates metadata for them.
SickRage Automatic Video Library Manager for TV Shows. It watches for new episodes of your favorite shows, and when they are posted it does its magic.
FlexGet is a multipurpose automation tool for content like torrents, nzbs, podcasts, comics, series, movies, etc.
sabnzbd makes Usenet as simple and streamlined as possible by automating everything we can.
nzbget is a binary downloader, which downloads files from Usenet based on information given in nzb-files.
headphones is an automated music downloader for NZB and Torrent, written in Python. It supports SABnzbd, NZBget, Transmission, µTorrent and Blackhole.
= Virtualization =
XenServer is an open source project and community managed by Citrix. The project develops open source software for securely running multiple operating systems and applications on a single device, enabling hardware consolidation and automation to reduce costs and simplify IT management of servers and applications.
Proxmox is a complete open source server virtualization management software. It is based on KVM virtualization and container-based virtualization and manages KVM virtual machines, Linux containers (LXC), storage, virtualized networks, and HA clusters.
VirtualBox is a general-purpose full virtualizer for x86 hardware, targeted at server, desktop and embedded use.
SmartOS is a hypervisor lean enough to run entirely in memory, powerful enough to run as much as you want to throw at it.
KVM is a full virtualization solution for Linux on x86 hardware containing virtualization extensions (Intel VT or AMD-V).
oVirt is free, open-source virtualization management platform. It was founded by Red Hat as a community project on which Red Hat Enterprise Virtualization is based.
= Monitoring =
Nagios is a powerful monitoring system that enables organizations to identify and resolve IT infrastructure problems before they affect critical business processes.
OMD avoids the tedious work of manually compiling and integrating Nagios addons while at the same time avoiding the problems of pre-packaged installations coming with your Linux distribution
Pandorafms is the most flexible monitoring software in the market. With a single tool, Pandora FMS can monitor everything: infrastructure, applications, services, and business progress.
PRTG Monitoring is a network monitoring software that is powerful and easy to use. Free for 100 sensors.
Zabbix is the ultimate enterprise-level software designed for real-time monitoring of millions of metrics collected from tens of thousands of servers, virtual machines and network devices.
Observium is a low-maintenance auto-discovering network monitoring platform supporting a wide range of device types, platforms and operating systems.
LibreNMS is a fully featured network monitoring system that provides a wealth of features and device support.
Cacti is a complete network graphing solution designed to harness the power of RRDTool's data storage and graphing functionality.
Munin surveys all your computers and remembers what it saw. It presents all the information in graphs through a web interface.
ZenOSS is an award winning, open source monitoring product that automatically discovers resources, without the use of agents, and provides visibility across all aspects of your IT environment whether physical, virtual or in the cloud.
AlienVault OSSIM is an open source security information and event management system. OSSIM combines Snort, OpenVAS, Nagios, OSSEC, and other tools into a single portal with log collection and correlation.
Graylog Centralize and aggregate all your log files for 100% visibility. Use our powerful query language to search through terabytes of log data to discover and analyze important information.
= Media Center =
Plex organizes your video, music, and photo collections and streams them to all of your screens.
Kodi, if a free and open source (GPL) software media center for playing videos, music, pictures, games, and more.
Emby brings all of your home videos, music, and photos together into one place.
OpenMediaVault is the next generation network attached storage (NAS) solution based on Debian Linux. It contains services like SSH, (S)FTP, SMB/CIFS, DAAP media server, RSync, BitTorrent client and many more.
PlexPy is a tool to easily monitor and receive notify playback events from Plex.
MediaGoblin is a free software media publishing platform that anyone can run. You can think of it as a decentralized alternative to Flickr, YouTube, SoundCloud, etc.
= Remote access =
Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC and RDP.
Chrome Remote Desktop allows users to remotely access another computer through Chrome browser or a Chromebook.
mRemoteNG is a fork of mRemote, an open source, tabbed, multi-protocol, remote connections manager. mRemoteNG adds bug fixes and new features to mRemote.
= VOIP =
Elastix is an Open Source Software to establish Unified Communications. About this concept, Elastix goal is to incorporate all the communication alternatives, available at an enterprise level, into a unique solution.
Asterisk is an open source framework for building communications applications. Asterisk turns an ordinary computer into a communications server.
FreePBX is a web-based open source GUI (graphical user interface) that controls and manages Asterisk (PBX)
= Networking =
pfSense is an open-source firewall/router computer software distribution based on FreeBSD.
Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license.
SophosUTM Complete Unified Threat Management protection for your network, web, email, applications, and users.
SohposXG is a fully equipped software version of the Sophos XG firewall, available at no cost for home users.
feeloadbalancer is offering the Free LoadMaster to help small companies and developers by providing them with a robust and proven load balancing option.
NetWorx is a simple and free, yet powerful tool that helps you objectively evaluate your bandwidth consumption situation.
VyOS is a community fork of Vyatta, a Linux-based network operating system that provides software-based network routing, firewall, and VPN functionality.
freeIPA is an integrated Identity and Authentication solution for Linux/UNIX networked environments.
Metiix Blockade Network-Wide Malware, Tracking, & Ad Blocking (Can also run on Raspbian)
OpenVPN is an open-source software application that implements virtual private network (VPN) techniques for creating secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities. It uses a custom security protocol that utilizes SSL/TLS for key exchange.
Smoothwall is a Free and Open Source firewall that includes its own security-hardened GNU/Linux operating system and an easy-to-use web interface.
ClearOS is an operating system for your Server, Network, and Gateway systems. It is designed for homes, small to medium businesses, and distributed environments. ClearOS is commonly known as the Next Generation Small Business Server, while including indispensable Gateway and Networking functionality.
DriveBender is the class leading storage pooling technology for Microsoft Windows. Developed by Division-M, Drive Bender allows for file redundancy via file duplication, and unlike RAID, does not require any proprietary drive format or complicated setup. (Now free)
CloudExtender is local Windows storage, powered by the cloud... with optional, state of the art TNO (trust no one) file encryption built right in. Create a Windows drive or folder that maps directly to your favorite storage platform in minutes.
SnapRAID is a backup program for disk arrays. It stores parity information of your data and it recovers from up to six disk failures.
flexRAID is a family of storage data protection products that provide great flexibility and various innovations. The current product line includes: RAID over File System (RAID-F) Transparent RAID (tRAID).
freeNAS is an operating system that can be installed on virtually any hardware platform to share computer data storage over a computer network.
Rockstor is a free and open source NAS(Network Attached Storage) solution. It's a software solution and can be installed on any hardware or a virtual machine satisfying these minimum requirements.
nas4free The NAS4Free operating system can be installed on virtually any hardware platform to share computer data storage over a computer network.
Xpenology is the name of a Linux boot image, which allows to run operating system Sinology DSM on almost any hardware (not just Synology).
owncloud is a self-hosted file sync and share server.
openFiler provides a simple way to deploy and manage networked storage.
openATTIC openATTIC combines open source storage tools in such a way that their entire functionality can be managed through a central interface. Carefully matched components ensure both stability and security. Its open interface enables you to integrate openATTIC to provisioning, monitoring and backup systems.
= Cameras =
iSpy is the world’s most popular open source video surveillance application.
ZoneMinder is intended for use in single or multi-camera video security applications.
motioneyeOS is a Linux distribution that turns your single board computer into a video surveillance system.
Blue Iris is security camera manager. It's not free (60$ for the full version) but it was highly recommended and there doesn't seem to be any comparable free alternatives.
= Documentation =
DokuWiki is a simple to use and highly versatile Open Source wiki software that doesn't require a database.
gollum is a simple, Git-powered wiki with a sweet API and local frontend.
BookStack is a simple, self-hosted, easy-to-use platform for organising and storing information.
phpIPAM is an open-source web IP address management application (IPAM).
Paperwork aims to be an open-source, self-hosted alternative to services like Evernote ®, Microsoft OneNote ® or Google Keep ®.
afraid Free DNS Hosting, Dynamic DNS Hosting, Static DNS Hosting, subdomain and domain hosting.
No-IP's mission is to provide useful, reliable and powerful services that help home users, small and large businesses and even fortune 500 companies take control over all aspects of their DNS and domain services.
xapi-back is a simple backup tool for XenServer or XCP – xen hypervisors using xapi toolstack. xapi-back is a command line tool with simple and clear interface (command + options). Tool is written in python.
Parity Technologies, bekannt für den gleichnamigen Ethereum-Client, gibt nun auch einen Bitcoin-Client heraus. Gesponsert wird das ganze von chinesischen Minern. Der Client ist zwar noch ziemlich beta, aber wer Parity von Ethereum kennt, darf sich dennoch freuen. -addnode=<ip> Add a node to connect ... To configure the Bitcoin client to start automatically: You might use the configuration-file, or the GUI-Settings: Settings -> Options then mark the checkbox titled: [X] Start Bitcoin on system startup Batch automation . To work with batch, you have to start the daemon (bitcoind.exe). The bitcoin.exe run with option "-server" will respond with GUI ... The Bitcoin.com mining pool has the lowest share reject rate (0.15%) we've ever seen. Other pools have over 0.30% rejected shares. Furthermore, the Bitcoin.com pool has a super responsive and reliable support team. The users of Bitcoin Core only accept transactions for that block chain, making it the Bitcoin block chain that everyone else wants to use. For the latest developments related to Bitcoin Core, be sure to visit the project’s official website. Decentralized. It is these users who keep Bitcoin decentralized. They individually run their own Bitcoin Core full nodes, and each of those full nodes ... Overview. The Satoshi bitcoin client creates a thread to manage making connections to other nodes. The code for that thread is in a function called ThreadOpenConnections2 in net.cpp.. The client also handles accepting new inbound connections and disconnecting nodes when appropriate in a a thread called ThreadSocketHandler2, which is also in net.cpp.. The thread making connections does not ...
Beginner PHP Tutorial - 66 - Better Way to Get Visitors IP Address