Skip to content Skip to sidebar Skip to footer

Campaigns such as GoFundNovo helped CryptoNovo raise the sum needed to buy his NFT back.
Min Chen, January 13, 2023
As you read this, CryptoPunk #3706, the subject of a January 3 hack that saw it furtively swiped from its holder’s crypto wallet, is safely back with its rightful owner, CryptoNovo. How it was recovered and restored, though, is the feel-good NFT story you’ve long been waiting for.
Last week, CryptoNovo tweeted with much alarm that he “just got hacked,” his collection of CryptoPunks, including #3706 which he uses as his Twitter profile picture, transferred to an unknown wallet labeled 0x8e25ab.
I just got hacked!!!
Are you kidding me!?! pic.twitter.com/r1xS0mhD6P
— CryptoNovo (@CryptoNovo311) January 4, 2023

While most of his followers commiserated over his loss, some opted to rally, initiating a host of fundraising campaigns to help the collector re-acquire his NFT.
There was GoFundNovo, spearheaded by the digital artist Dario De Siena, which asked community members to mint one of 2,000 available GoFundNovo Support Tokens. Token holders could then claim a unique ERC-721 token featuring art created by the likes of nonfungiblemotion, darko.eth, Jacopo Lanza, and De Siena himself.
“CryptoNovo has been, for years, an amazing ambassador for Punks and for Web3, and he’s fallen victim to a malicious link from a hacked Discord. Sadly, his Punks have been stolen, and we are working to help him reclaim the iconic hat and clown-nose Punk that is core to his digital identity,” wrote De Siena. “This campaign is as much a part of our movement as it is an effort to help one specific person.”
Additionally, the NovoPixels project dropped 576 tokens at 0.04 ETH each (about $57), with all proceeds going toward a recovery wallet; and OnChainNovo released a collection of 311 digital works inspired by CryptoNovo’s Punk, intended to benefit the GoFundNovo wallet. 
Launched a collection to support a fellow web3 maker who got scammed:
– each token represents a pixel of punk #3706
– 0.04 eth / token
– 100% on-chain
– pixel distribution revealed when all is minted
– no royalties, all proceeds go to buy the punk back
👇 https://t.co/qm18Ew1UWb
— gwΞndall ⌐◨-◨ (@gwendall) January 9, 2023

Another fundraiser, while launching a mint of 3,706 tokens based on a GIF, emphasized the need for continued cyber vigilance. “This playful GIF,” stated the campaign, “is also a reminder that just one mis-click could lead to unwanted consequences.”
Crypto scams have indeed thrived for as long as NFTs have been on the market. Thieves have attempted cons from phishing attacks to pump-and-dumps to steal what in 2021 amounted to more than $100 million worth of digital assets. In the days after his hack, CryptoNovo also posted about a number of Discord and Twitter accounts that were stealing his identity with apparent malicious intent.
Collectively, the campaigns to fundraise for CryptoNovo pooled 84.84 ETH (roughly $121,000), far exceeding its initial goal. The sum was more than enough to buy CryptoPunk #3706 back from the hackers on January 11.
Welcome Back #3706 🥹💪🔴 #GoFundNovo @CryptoNovo311
Big Big TNX to all the supporters who made it possible! @ross_dallbricht @gwendall @Tschuuuuly @frankNFT_eth @RottenRadio_eth @SpottieWiFi @hashtagzmedia @GratefulApe_eth @0xHirsch @CryptoPopPunk & many more!🥳 pic.twitter.com/YCpLFoH9At
— Dario De Siena (@Dario_Desiena) January 11, 2023

“I’m speechless,” said CryptoNovo in a statement about the return of his NFT. “I’m blown away by the dedication and determination you all had to bond together through epic Twitter Spaces and really cool NFT drops to make this happen. You can’t spell #commUNITY without UNITY and that’s exactly what I saw.”
He added that he will be working with authorities in the investigation into the hack and urged his followers to practice cyber hygiene. “You can never be too careful and an attack can come from anywhere,” he said.
De Siena, for his part, has naturally been effusive about the success of GoFundNovo. “My Heart is full of Love!” he tweeted, before later adding, “FOR THE CULTURE!”
 
More Trending Stories:
German Researchers Used Neutrons to Peek Inside an 800-Year-Old Amulet⁠—and Discovered Tiny Bones
French Archaeologists Make ‘Unprecedented Discovery’ of What May Be the Remains of a Roman-Era Mausoleum
Art Industry News: A San Francisco Dealer Was Caught on Video Hosing Down a Homeless Woman in Front of His Gallery + Other Stories
In an Ironic Twist, an Illustrator Was Banned From a Reddit Forum for Posting Art That Looked Too Much Like an A.I.-Generated Image
Instagram Has Removed an Illustration From Cardi B’s Account After the Artist Threatened to Sue for Copyright Infringement
A Minnesota University Is Under Fire for Dismissing an Art History Professor Who Showed Medieval Paintings of the Prophet Muhammad
The Truth About Anna and Larry’s Relationship Status, Jens Hoffmann and His Imaginary Friends Start a Gallery, and More Juicy Art World Gossip

Share
By Richard Whiddington, Nov 16, 2022
By Artnet News, Aug 25, 2022
By Taylor Dafoe, Sep 17, 2021
By Sarah Cascone, 3 days ago
By Artnet News, 3 days ago
©2023 Artnet Worldwide Corporation. All Rights Reserved.var w = Math.max(document.documentElement.clientWidth, window.innerWidth || 0),
h = Math.max(document.documentElement.clientHeight, window.innerHeight || 0),
pagetype = document.querySelector(‘meta[property=”og:type”]’).getAttribute(“content”),
pagetypeurl = document.URL,
pagetypeforce = pagetypeurl.substr(pagetypeurl.length – 3);
isnewsletter = pagetypeurl.includes(“?page_1”);
w = pagetype + 20 * Math.round(w / 20), h = pagetype + 20 * Math.round(h / 20), googletag.cmd.push(function() {
googletag.pubads().setTargeting(“width”, w), googletag.pubads().setTargeting(“height”, h), 1 == isnewsletter && googletag.pubads().setTargeting(“isfirstpage”, [‘Y’, pagetypeforce] )
});
(function defernl() {
if (window.jQuery) {
if (jQuery(window).width() > 619) {
setTimeout(function() {

var cookieSettings = {
recentlyShown: {
expiration_minutes: 5
},
signedUp: {
expiration_days: 14
},
closedSignupBar: {
expiration_days: 5
}
};

var generalSettings = {
loadFontAwesome: false
};

if (!window.jQuery) loadJQuery();
var $ = window.jQuery;

function addCss(fileName) {
var head = document.head
, link = document.createElement(‘link’);

link.type = ‘text/css’;
link.rel = ‘stylesheet’;
link.href = fileName;

head.appendChild(link);
}

function appendNewsletterSignup() {
var signup =

//hide on mobile phones
+ ‘ @media (max-width: 575px){ #ouibounce-modal {display:none !important;} }’
+ ‘ @media (max-width: 767px){ .close-signup {top:0 !important;} }’
+ ‘ @media (max-width: 1199px){ #ouibounce-modal .description {font-size:13px !important;} }’
+ ”
+ ‘


+ ‘


+ ‘


+ ”
+ ”
+ ‘


+ ‘


+ ‘

Get hand-picked stories from our editors delivered straight to your inbox every day.


+ ‘


+ ‘


+ ‘


+ ‘


+ ‘


+ ‘Please enter a valid email address’
+ ‘


+ ‘


+ ‘


+ ‘


+ ‘
+ ‘


+ ”
+ ”
+ ‘


+ ‘


+ ‘


+ ”
+ ‘


+ ‘


+ ‘


+ ‘


+ ‘

‘;

$(‘body’).append(signup);
}

var paywallPagesRegex = /^/subscribe|subscribe-confirm|my-account(/|$)/;

function initNewsletterSignup() {
// don’t show it on paywall-related pages where the user might be in the process
// of subscribing, or managing their account
if (paywallPagesRegex.test(window.location.pathname)) {
return;
}

// Append ouibounce to page
var ouibounceScript = ”;
$(‘body’).append(ouibounceScript);

// Add animation css
addCss(‘https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.5.2/animate.min.css’);

if (generalSettings.loadFontAwesome) {
addCss(‘https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css’);
}

// Check if ouibounce exist before calling ouibounce
var initOuibounce = setInterval(function() {
if (typeof ouibounce !== ‘undefined’) {
appendNewsletterSignup();

var $modal = $(‘#ouibounce-modal’);
SignupForm.init($modal.find(‘form’), function onSuccess() {
//hide form fields and show thank-you message
$modal.find(‘.form-row’).hide();
$modal.find(‘.newsletter-signup-thank-you’).fadeIn(‘fast’);

setNewsletterCookie(‘signedUp’, 1);

//after successful signup, hide the signup bar after 5 seconds
setTimeout(function() {
closeSignupBar();
}, 5000);
});

// Handler for close signup button
$(‘body’).on( ‘click’, ‘.close-signup’, function(){
setNewsletterCookie(‘closedSignupBar’, 1);
closeSignupBar();
});

ouibounceAPIaccess = ouibounce(
$modal[0], {
aggressive: true,
sensitivity: 50,
callback: function() {
slideInModal(‘Down’);
}
}
);

clearInterval(initOuibounce);
}
}, 100);
}

function slideInModal(upOrDown) {
$(‘#ouibounce-modal’)
.removeClass(‘slideOutDown slideOutUp’)
.addClass( ‘slideIn’ + upOrDown );

setNewsletterCookie(‘recentlyShown’, 1);
}

function setNewsletterCookie(cookieName, value) {
//exdays*24*60*60
var settings = cookieSettings[cookieName];
var expirationMinutes = settings.expiration_minutes;
if (!expirationMinutes) {
expirationMinutes = daysToMinutes(settings.expiration_days);
}
setCookie(cookieName, value, expirationMinutes);
}

function daysToMinutes(numDays) {
return numDays * 24 * 60;
}

/**
* Generic setCookie() method, used by setNewsletterCookie().
* There is probably no need to call this directly – use setNewsletterCookie().
*/
function setCookie(cname, cvalue, expMinutes, prefix) {
//default prefix is ‘artnet_newsletter_’
if (prefix == undefined) {
prefix = ‘artnet_newsletter_’;
}
var d = new Date();
d.setTime(d.getTime() + (expMinutes*60*1000));
var expires = “expires=”+d.toUTCString();

//console.log(prefix + cname + “=” + cvalue + “;” + expires + “;path=/”);
document.cookie = prefix + cname + “=” + cvalue + “;” + expires + “;path=/”;
}

function getCookie(cname, prefix) {
//default prefix is ‘artnet_newsletter_’
if (prefix == undefined) {
prefix = ‘artnet_newsletter_’;
}
var name = prefix + cname + “=”;
var ca = document.cookie.split(‘;’);
for(var i = 0; i <ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length,c.length);
}
}
return "";
}

function closeSignupBar() {
var $modal = $('#ouibounce-modal');
$modal.addClass( $modal.hasClass('slideInUp') ? 'slideOutDown': 'slideOutUp' );
}

function loadJQuery() {
var script = document.createElement('script');
script.src = "https://code.jquery.com/jquery-3.1.1.min.js";
script.integrity = "sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=";
script.crossorigin = "anonymous";
document.body.appendChild(script);
}

function checkCookies() {
//if any of these cookies are found, we don't show the modal.
var cookieNames = ['recentlyShown', 'signedUp', 'closedSignupBar','signup_cookie'];
var i = cookieNames.length,
found = false;
while (i–) {
if (getCookie(cookieNames[i]).length) {
found = true;
break;
}
}

if (!found) {
initNewsletterSignup();
}
}

var SignupForm = {
regex: {
email: /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/
},

// Init – Anything you want to happen onLoad (usually event bindings)
// ——————————————————————-
init: function (formElement, onSuccess) {
var ctx = this;
ctx.customSerializer();
if (!onSuccess) {
throw Error('onSuccess callback is required');
}

var $form = $(formElement);
$form.submit(function(e){
e.preventDefault();

var $email = $form.find('.signup-email');
var valid = ctx.validate( $form, $email);
if(valid){
// Hide the errors
$form.find('.errors').children().hide();
// Submit the form
ctx.submit($form, onSuccess);
} else {
// Focus on the email input box
$email.focus();
// Show email validation error and hide other errors
$form.find('.invalid-email').show().siblings().hide();
}
});
},

// FUNCTIONS
// ===================================================================

// Signup validation
// ——————————————————————-
validate: function( $form, $email ){
var ctx = this;
// Does the email match our regex?
return ctx.regex.email.test( $email.val() );
},

// Signup submission
// ——————————————————————-
submit: function($form, onSuccess) {
var ctx = this;
$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: JSON.stringify( $form.serializeFormJSON() ),
// dataType: 'json',
contentType: 'application/json; charset=UTF-8',
crossDomain: true,
timeout: 10000
})
.done(function(data, textStatus, jqXHR) {
onSuccess();
})
.fail(function(jqXHR, textStatus){
// Show signup failure error and hide other errors
$form.find('.signup-failed').show().siblings().hide();
});
},

// Extends jQuery with a function to serialize to JSON
// ——————————————————————-
customSerializer: function(){
$.fn.serializeFormJSON = function () {
var o = {};
var a = this.serializeArray();
$.each(a, function () {
if (o[this.name]) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
}
};

//show automatically after delay
setTimeout(function(){
var $modal = $('#ouibounce-modal');
//if there are cookies indicating that we shouldn't show the signup bar, then the modal won't have been added to the page
//and we can just return here.
if (!$modal.length) {
return;
}
//don't run this function if the user has already triggered the modal by leaving the viewport
if ($modal.hasClass('slideInDown')) return;

//position at bottom of screen
$modal.css({
top: 'auto',
bottom: 0
});

slideInModal('Up');
$modal.show();

},20000); //20 seconds

$(function() {
checkCookies();
});

}, 7500);
}
} else {
setTimeout(function() { defernl() }, 250);
}
})();

artnet and our partners use cookies to provide features on our sites and applications to improve your online experience, including for analysis of site usage, traffic measurement, and for advertising and content management. See our Privacy Policy for more information about cookies. By continuing to use our sites and applications, you agree to our use of cookies.
You are currently logged into this Artnet News Pro account on another device. Please log off from any other devices, and then reload this page continue. To find out if you are eligible for an Artnet News Pro group subscription, please contact [email protected]. Standard subscriptions can be purchased on the subscription page.
Log In

source

Leave a comment