BIP-0018
Proposition de Luke Dashjr intitulée « hashScriptCheck » qui visait à remplacer les champs scriptSig et scriptPubKey des transactions par trois nouveaux éléments : dataSig (données pures poussées sur la pile), scriptCheck (le script de validation) et hashScriptCheck (le hachage du script attendu placé dans l’output). Contrairement au BIP-0017 du même auteur qui proposait un nouvel opcode OP_CHECKHASHVERIFY, le BIP-0018 adoptait une approche plus radicale en redéfinissant la structure même des entrées et sorties de transactions. Sur le plan protocolaire, le résultat était identique au BIP-0016 (P2SH), mais le BIP-0018 formalisait la dépréciation explicite de scriptSig et scriptPubKey.