Hacker Newsnew | past | comments | ask | show | jobs | submit | kube-system's favoriteslogin

>It’s not burned into the BIOS, instead Microsoft maintains a database mapping licenses to hardware identifiers.

Wrong. IT IS 100% stored in the UEFI firmware, specifically ACPI tables, MSDM field. Only if that exists, it is then verified on-line for activation to make sure the license is genuine and matches the device ID you're referring to for witch the license was sold(typically for OEM) or if it's portable.[1]

On linux you should be retrieve the license via something like:

  sudo strings /sys/firmware/acpi/tables/MSDM
OR

  sudo acpidump | grep MSDM
[1] https://www.cyberciti.biz/faq/linux-find-windows-10-oem-prod...


Use a VPN and sign up through Argentina. It's around £2/ month then, have been doing that for a year.

They use p0f for TCP fingerprinting in their nginx config :)

Edit: Cool spam factors in extsearch/robot/index/metadoc/lib/links/spam_factors.h:

    SF_WEB_HOST_RANK = 0,
    SF_GREEN_TRAFFIC_SHARE_NORMALIZED = 1,
    SF_ADULTNESS_BETA = 2,
    SF_NOT_FOUND_RANKS = 3,
    SF_RANK_DOOR_TUMBLR = 4,
    SF_NASTY_CONTENT = 5,
    SF_LANGUAGE = 6,
    SF_IS_SHOP = 7,
    SF_WEB_HOST_SIZE = 8,
    SF_RANK_HACKED_NOVA_PHP = 9,
    SF_IS_FOREIGN_HOST = 10,
    SF_PESS_LEVEL = 11,
    SF_SPAMNESS = 12,
    SF_NASTY_HOST = 13,
    SF_MORE_120SEC_VISITS_SHARE = 14,
    SF_GREEN_TRAFF_SHARE_CORRECT = 15,
    SF_RESERVED_16 = 16,
    SF_WEB_RANDOM_LOG_HOST_ERRATUM_LOG_QUERY_PROBABILITY_AVG = 17,
    SF_RESERVED_18 = 18,
    SF_WEB_VISITORS_RETURN_MONTH_SHARE = 19,
    SF_WEB_RANDOM_LOG_HOST_SYNT_QUALITY_AVG = 20,
    SF_WEB_RU_TRAFF_SHARE = 21,
    SF_RESERVED_22 = 22,
    SF_RESERVED_23 = 23,
    SF_RESERVED_24 = 24,
    SF_RESERVED_25 = 25,
    SF_WEB_MORE_160_VISITORS_SHARE = 26,
    SF_RESERVED_27 = 27,
    SF_RESERVED_28 = 28,
    SF_WEB_TOUCH_WIFI_TRAFF_SHARE = 29,
    SF_WEB_LOG_CTR_MEAN = 30,
    SF_RESERVED_31 = 31,
    SF_RESERVED_32 = 32,
    SF_SPAM_FORMULA_MEDIAN = 33,
    SF_AVG_GEOV_SQ = 34,
    SF_AVG_TH3973_SQ = 35,
    SF_RUS_DOCS_COUNT = 36,
    SF_AVG_SKACHKI_SOFT_FIX = 37,
    SF_RANK_MFA_RU_42 = 38,
    SF_DEV_PFC_TOTAL_LINKS = 39,
    SF_RANK_DOOR2_2 = 40,
    SF_AVG_QC_1 = 41,
    SF_QUERIES_CHAR_LEN = 42,
    SF_HOST_IMG_CLICKS = 43,
    SF_AVG_DOORWAY_BIGWEIGHT_NORM = 44,
    SF_AVG_QS_FTOP_FREQ_IN_ARATIO = 45,
    SF_HOST_RANK = 46,
    SF_AVG_TITLE_CAPITAL_LETTERS_RATIO = 47,
    SF_RANK_COMM_GOODNESS_UA = 48,
    SF_YABAR_AVG_URL_LEN = 49,
    SF_MAX_OWNER_QS_RANK = 50,
    SF_DIFF_MAX_QS_RANK_ON_NUMHOPS_255 = 51,
    SF_YABAR_SEARCH_VIS_AVG_DEPTH = 52,
    SF_AVG_QS_F_WND_500_NOFILTER = 53,
    SF_QUERIES_WORD_LEN = 54,
    SF_RANK_UNBAN_MX2 = 55,
    SF_AVG_QS_F_PARA_WORDS_REQ_SQRT_MAX_OF_SUM_WORD_WEIGHT = 56,
    SF_RANK_ASESSOR_GOODNESS_RELATIVE = 57,
    SF_RANK_COMM_BAR_GOODNESS_SITE = 58,
    SF_QUERIES_AVG_TEXT = 59,
    SF_MIN_QS_DOC_CLASS_QS_RANK_PTH_QUERY_SPAM = 60,
    SF_SERP_CLICKS_BY_SLASH_PART_2_30 = 61,
    SF_MAX_QS_DOC_CLASS_QS_RANK_PTH_QUERY_SPAM = 62,
    SF_RANK_COMM3 = 63,
    SF_DEV_QS_F_PUNCT_BLANKS_RAT = 64,
    SF_RANK_UNBAN_MX = 65,
    SF_FROM_SEARCH_SHARE_NORMALIZED = 66,
    SF_RANK_XIT_DOOR = 67,
    SF_AVG_QS_RANK_ON_NOT_SUBDOMAINS_DOCS = 68,
    SF_AVG_OWNER_QS_RANK = 69,
    SF_HOST_CLIPART_IMAGE_COUNT = 70,
    SF_RANK_HACKED_NOVA2 = 71,
    SF_WEB_RANDOM_LOG_HOST_QI_QUERY_COUNT_AVG = 72,
    SF_WEB_COMM_LINKS_HOST_CEO = 73,
    SF_WEB_YABAR_HOST_AVG_TIME2 = 74,
    SF_LINK_IN_SEO_PART = 75,
    SF_LAST_PESS_TIME = 76,
    SF_WEB_OWNER_MEAN_RELEV_MX = 77,
    SF_NASTY_URL = 78,
    SF_PAGE_RANK = 79,
    SF_HAS_MAIN_CONTENT = 80,
    SF_AVG_SPAM = 81,
    SF_RANK_ARTROZ = 82,
    SF_RANK_AGS4 = 83,
    SF_AVG_NUM_HOPS = 84,
    SF_MIN_OWNER_QS_RANK = 85,
    SF_FROM_SEARCH_SHARE_YA_BRO = 86,
    SF_OWNER_MEAN_RELEV = 87,
    SF_HOST_FACE_IMAGE_COUNT = 88,

A single ultra long life Li-SOCl2 D cell like the Tadiran TL5930/S could probably power one of these chips for no less than a decade.

https://www.mouser.com/ProductDetail/Tadiran-Batteries/TL593...


> Though I suppose the ATM company could combat this by encoding the machine's ID or a nonce with the message that the card's smart chip responds to, so it only works when replayed on that first machine - is this what happens in practice?

Yes, more or less. The chip and contactless flows defined by EMV both require the card to generate a nonce for the transaction. The terminal also generates its own nonce[1].

[1]: https://www.cs.ru.nl/E.Poll/papers/EMVtechreport.pdf


Brew is only slightly a mess, in my experience.

I've installed brew both in the historical /usr/local location as well as the future home of /opt/homebrew. I then created these two aliases:

  alias armbrew="/opt/homebrew/bin/brew"
  alias intbrew="arch -x86_64 /usr/local/bin/brew"

My PATH selects for programs installed in the /opt/homebrew location first and then /usr/local. I try to install with the ARM version first with `armbrew install -s <PKG>` and if it fails, I move to using the `intbrew` alias as normal. I haven't really had any issues.

It's obviously still messy but not in a way that is too bad!


Unfortunately I didn't find an example that was simple enough on the web, and the work I did is not open source, so here is the best link I found, which was by the way what I used to derive my implementation:

https://codepen.io/dsheiko/pen/MvEpXm

This is a bit fancier than necessary and that makes it not so good as an example for learning, but hopefully it will be enough to give you the idea.

edit: this one is a little bit better to understand the basics: https://medium.com/metaphorical-web/javascript-treeview-cont...

In short, summary/detail has the native hability to collapse the details and you can explore that to implement a tree by nesting them.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: