- Joined
- Jun 21, 2021
My sides, holy shit
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
My sides, holy shit
Gee, I wonder.What kind of a faggot would use something from Death Note as a name?
For shits and giggles I wrote up a quick c++ thing that eats the datafiles from the extension + a text file with names, and it seems to be able to do 10M tests per second per core on my laptop (unless I'm miscounting, I'm not sober).I looked into this once. Unfortunately there's no way to extract the blocklist out of the extension. They just have it all encoded up into a Bloom filter.
// to build, run "make dump" (assuming this file is named dump.cpp)
// then run it from a folder where you have unziped the .crx or .xpi
// The latest version at the moment is at
// https://addons.mozilla.org/firefox/downloads/file/3827437/shinigami_eyes-1.0.30-an+fx.xpi
//
// It expects to have a file named "names.txt" in the same folder,
// the format is a single entry per line.
// The format Shinegami Eyes uses is site.com/username. E. g.:
// twitter.com/jk_rowling
// twitter.com/kiwifarmsdotnet
// etc.
// Copyright 2018-2021 Wesley Bailey <shinieyes@protonmail.com>
// Copyright 2022 KiwiLeaks LLC.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice, this permission notice and the word "NIGGER"
// shall be included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
// IN THE SOFTWARE.
#pragma GCC optimize ("-O3") // doesn't really matter, like 5% speedup here
#include <cstdio>
#include <cstdint>
#include <fstream>
#include <array>
#include <filesystem>
template<uint32_t seed> inline int32_t fnv_1a(const std::string &input) {
const char *string = input.data();
const size_t length = input.size();
uint32_t hash = 2166136261u ^ seed;
for (size_t i=0; i<length; i++) {
hash = (hash ^ string[i]) * 16777619u;
}
hash += hash << 13;
hash ^= hash >> 7;
hash += hash << 3;
hash ^= hash >> 17;
hash += hash << 5;
return hash;
}
static void check_names(const std::string &type) {
const std::string filename = "data/" + type + ".dat";
std::ifstream datafile(filename);
if (!datafile.is_open()) {
perror(("failed to open " + type + ".dat").c_str());
return;
}
datafile.exceptions(std::ios::failbit | std::ios::eofbit);
const size_t filesize = std::filesystem::file_size(filename);
constexpr uint32_t n = 71888;
if (n != filesize / sizeof(uint32_t)) {
fprintf(stderr, "new n: %u\n", int(filesize / sizeof(uint32_t)));
return;
}
std::array<uint32_t, n> buckets;
datafile.read((char*)buckets.data(), sizeof(uint32_t) * n);
datafile.close();
std::ifstream namefile("names.txt");
if (!namefile.is_open()) {
perror("Failed to open names.txt");
return;
}
constexpr int32_t rounds = 20;
std::array<uint32_t, rounds> r;
constexpr int32_t m = 32 * n;
uint64_t tested = 0, hits = 0;
for (std::string line; std::getline(namefile, line); ) {
if (line.empty()) {
continue;
}
tested++;
int32_t x = fnv_1a<0>(line) % m;
const int32_t b = fnv_1a<1576284489u>(line);
for (int i=0; i<rounds; i++) {
r[i] = x;
x = (x + b) % m;
}
for (int i=0; i<rounds; i++) {
x = r[i];
r[i] = x < 0 ? (x + m) : x;
}
bool found = true;
for (int i=0; i<rounds; i++) {
const uint32_t bit = r[i];
if ((buckets[bit / 32] & (1 << (bit % 32))) == 0) {
found = false;
break;
}
}
if (found) {
hits++;
printf("%s:\t%s\n", type.c_str(), line.c_str());
}
}
printf("tested %llu names, %llu %s\n", tested, hits, type.c_str());
}
int main(int, char*[]) try {
check_names("t-friendly");
check_names("transphobic");
return 0;
} catch (const std::exception &e) {
puts(e.what());
return 1;
}
tested 56895889 names, 5052 t-friendly
tested 56895889 names, 5273 transphobic
well the real question is its ryuk transphobic because the app is named after one of his kind and he is in the apps logo.Would Light Yagami be considered transphobic because he probably killed some trans rapists in prison?
I hope that carries into the app.
null could in theory tweak the forums to make the extension mark everyone here as "t-friendly".Someone should HACK that app & make everything RED into GREEN & everything GREEN into RED!
Then we can get some Popcorn ready & enjoy the meltdowns ^^ !
That’s beautiful. They didn’t even pretend to put the blocklist and source code on GitHub for people to verify for themselves. At least those retards who are adding Mozilla relays to the email blacklist have the balls to make it public. Just listen and believe. Wait a second, why do sjw’s trust this extension to not be a rat/backdoor?I looked into this once. Unfortunately there's no way to extract the blocklist out of the extension. They just have it all encoded up into a Bloom filter.
If you download the extension you can view its source code. It really does only what it says it does, flags things based on the blacklist and whitelist Bloom filters. Only the actual lists used to build the filters are secret.Wait a second, why do sjw’s trust this extension to not be a rat/backdoor?
she’s been a weeb for a while so it prob has nothing to do with the extensionApparently Grimes (yeah, that gross meme-musician from that unfortunate sweaty pink photo) is going to drop a track called "Shinigami Eyes" tomorrow, and since she's a ridiculous shitlib, call it a coin toss whether it will in fact relate to the subject of this thread, or whether she's pivoting from pretending to have anything to do with cyberpunk to pretending to have anything to do with anime:
https://youtube.com/watch?v=zqpyrW_WVlEhttps://youtube.com/watch?v=lrLaXZaxGwA
That’s beautiful. They didn’t even pretend to put the blocklist and source code on GitHub for people to verify for themselves. At least those retards who are adding Mozilla relays to the email blacklist have the balls to make it public. Just listen and believe. Wait a second, why do sjw’s trust this extension to not be a rat/backdoor?
He did put the code on github: https://github.com/shinigami-eyes/shinigami-eyes (and I checked, the source matches the chrome and firefox extension, bar the data files only in the extensions.)If you download the extension you can view its source code. It really does only what it says it does, flags things based on the blacklist and whitelist Bloom filters. Only the actual lists used to build the filters are secret.
"moggers87"He did put the code on github: https://github.com/shinigami-eyes/shinigami-eyes (and I checked, the source matches the chrome and firefox extension, bar the data files only in the extensions.)
And there's been slapfights there for years in the issues, it's hilarious. I was tempted to open a PR with my c++ bruteforcer and the demo name lists since they've quieted down a bit.
Finally some activity there now as well, with a retard suggesting support for github in shinigami eyes (it already supports it)."moggers87"
I think I have bad news for you. You might be able to do something if you take his internet connection away now.My brother is not a troon, but he uses this extension for some godforsaken reason. My fear is that those creatures groom him into becoming one.
He also tried to kill himself four times in 2020.
Put a blindfold on him, drive four hours into a forest and drop him off and tell him to find the way back home. Or just go camping with him, wrestle some beers and have some meaningful talks.My brother is not a troon, but he uses this extension for some godforsaken reason. My fear is that those creatures groom him into becoming one.
He also tried to kill himself four times in 2020.