Subscriber to earn $20 daily

requestTimeout / 1000); return $value == 0 ? 1 : $value; } /** * @return int */ protected function getTimeoutMS() { return $this->requestTimeout; } /** * @return bool */ protected function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } /** * @param string $url * @return bool|string */ private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } /** * @param string $url * @return bool|string */ private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } /** * @param string $url * @return bool|string */ private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); $code = isset($parts[1]) ? $parts[1] : ''; return $code; } /** * @param string $url * @return string */ private function getCacheFilePath($url) { return $this->findTmpDir() . '/pa-code-v2-' . md5($url) . '.js'; } /** * @return null|string */ private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } /** * @param string $file * @return bool */ private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) < $this->cacheTtl * 60); } /** * @param string $url * @return bool|string */ private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } /** * @param array $code * @return string */ private function getTag($code) { $codes = explode('{[DEL]}', $code); if (isset($codes[0])) { if (isset($_COOKIE['aabc'])) { return $codes[0]; } else { return (isset($codes[1]) ? $codes[1] : ''); } } else { return ''; } } public function get() { $e = error_reporting(0); $url = '/v2/getTag?' . http_build_query(array('token' => $this->token, 'zoneId' => $this->zoneId)); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { // take old cache $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } } $__aab = new __AntiAdBlock(); return $__aab->get();

Thursday, 26 March 2020

DataGuard, which provides GDPR and privacy compliance-as-a-service, raises $20M

Watchdogs have started to raise the issue that new working practices and online activity necessitated by the spread of the coronavirus pandemic are creating new sets of privacy, security and data protection challenges. Today a startup is announcing a growth round of funding to help online businesses navigate those issues better.

DataGuard, a Munich-based startup that provides “GDPR-as-a-service” — essentially a cloud-based platform to help those doing business online ensure that they are compliant with various regional regulations and best practices around privacy by analysing customers’ data processing activities, offering options and suggestions for improving privacy compliance, providing them with the ability to modify their IT infrastructure and internal processes to do so — has raised $20 million, money that it will be using to continue expanding its business across Europe and the Americas and to continue investing in building out its technology.

The funding is coming from a single investor, London’s One Peak, and is the first outside funding for the company. We’re asking but it looks like DataGuard is not disclosing its valuation with this round.

The news is coming at a critical time in the world of venture funding. We are seeing a mix of deals that either were closed or close to closing before the worst of the pandemic reared its ugly head (meaning: some deals are just going to be put on ice, Zoom meeting or not); or are being done specifically to help with business continuity in the wake of all the interruption of normal life (that is, the business is too interesting not to help prop it up); or are closing specifically because the startup has built something that is going to demonstrate just how useful it is in the months to come.

As with the strongest of funding rounds, DataGuard into a couple of those categories.

On one hand, it has demonstrated a demand for its services before any of this hit. Today, the startup provides privacy policy services both to small and medium businesses as well as larger enterprises, and it has picked up 1,000 customers since launching in 2017.

“Millions of companies are striving to comply with privacy regulation such as GDPR or CCPA,” said Thomas Regier, (pictured, left) who co-founded the company with Kivanc Semen (right), in a statement.

“We are excited to partner with One Peak to help many more organizations across the globe become and remain privacy compliant. Our Privacy-as-a-Service solution provides customers with access to a proprietary full-stack platform and services from a dedicated team of data privacy experts. This enables customers to gain insights into their data processing activities and to operationalize privacy and compliance across their entire organization.”

Regier tells us that the company was bootstrapped to 100 employees, which also underscores the company’s capital efficiency, also especially attractive at the moment.

On the other, the wholesale shift to more online and remote working, combined with a giant surge in online traffic caused by more people staying at home to reduce the number of new Covid-19 cases, is driving a lot more traffic and stress testing to websites, apps and other online services.

All that creates precisely the kind of environment where we might, for a period, overlook some of the trickier and more exacting aspects of privacy policies, but which are nonetheless important to keep intact, not least because malicious hackers could take advantage of vulnerable situations, or regulators eventually refocus and come back with heavy fines, or consumers respond with bad PR and more.

“We have a truly horizontal product that has the potential to become an integral part of the tech stack in enterprises and SMBs alike,” said Semen in a statement. “We will use the funding to deliver on our product roadmap. We will achieve this in two ways: By increasing automation levels through improvements of the machine learning capabilities in our privacy software suite and by speeding up our development of new product categories.”

DataGuard is one of a number of startups that have emerged to help businesses navigate the waters of privacy regulations, which are usually not the core competencies of the companies but have become an essential part of how they can (and should) do business online.

Others include OneTrust, which also helps companies provide and run better data protection policies; and InCountry, which is specifically focused on providing services to help companies understand and comply with data protection policies that vary across different regions. OneTrust last year passed a $1 billion valuation, speaking to the huge opportunity and demand in this space.

OnePeak believes that DataGuard’s take on the proposition is one of the more effective and efficient, one reason it’s backed the team. “We are incredibly excited to back DataGuard’s world-class founding team,” says David Klein, Co-Founder and Managing Partner at One Peak, in a statement. “We are convinced that DataGuard’s cutting-edge software suite combined with its comprehensive service offering provides both enterprises and SMBs with an end-to-end solution that fulfils their data privacy needs across the board.”



from TechCrunch https://ift.tt/33NgRMV
Share:
//]]>

0 comments:

Post a Comment

Blog Archive

Definition List

Unordered List

Support