Generation vs Blood Potency question

me and my players were wondering about an aspect of Gen vs Blood Potency. It states on page 149 that caracter gen 10 gets 2 bp. we were wondering if the +1 bp that the Ancillae gives ups the bp to 3? If so why is it written on page’s 137 recap that 10th and 11th have bp 2. What a gen 9 sires a 10 in 2015… he would not be an Ancillae but would still get the base 2 bp right? I’m a french speaking person so I hope I’m clear lol Thanx a bunch

Is this method of 32 char hash generation secure enough for online-based attacks?

A fellow developer and I have been having a discussion about how vulnerable a few different methods of developing a hash are, and I’ve come here to see if smarter people than I (us?) can shed some light.

In PHP, I feel the below is secure ENOUGH to generate as 32 character value that could not be reasonably broken via online attack. There are some other mitigating circumstances (such as in our specific case it would also require the attacker to already have some compromised credentials), but I’d like to just look at the "attackability" of the hash.

str_shuffle(MD5(microtime())) 

The suggested more secure way of generating a 32 character hash is:

bin2hex(random_bytes(16)) 

I acknowledge the first hash generation method is not ABSOLUTELY SECURE, but for an online attack I think being able to guess the microtime (or try a low number of guesses), and know the MD5 was shuffled and/or find a vulnerability in MT which str_shuffle is based on is so low as to make it practically secure.

But I would love to hear why I’m a fool. Seriously.

EDIT — This is being used as a password reset token, and does not have an expiry (although it is cleared once used, and is only set when requested).

Navmesh awkward path generation with string pulling due to “inner” vertices

I’ve identified a problem and a possible solution related to navmesh-based pathfinding. Before diving in, I’ll preface my post with some questions to keep in mind as you read:

  • Is this a known problem that people have solved before?
  • Is there a term for the problem that could help me search for information related to it?
  • Is the solution I came up with an existing idea? If so is there a name for the algorithm or some other search term I could use to find more information?
  • Is there a better solution? If so, please point me to it.

For reference, I’m using images from http://jceipek.com/Olin-Coding-Tutorials/pathing.html#navigation-meshes and generally following the advice laid out there.

tl;dr of that blog post is

Decompose your walkable area into a navmesh, treating convex polygons as nodes and their borders as edges so that you can perform an A* search to get from point A to point B. To translate from “node ids” back to real points, use string-pulling.

Here’s a copy of the example space: initial example area

And an example generated path after performing string pulling: example area with a completed path from A to B

So far so good.

But I realized this approach generates an awkward path in a situation like this: awkward path

In this situation, a trio of nodes are all adjacent to each other, and so the A* will generally choose a path directly from the starting node to the ending node, despite an intuitive understanding that the agent can move in a straight line from A to B which travels through a different polygon.

I’ve been working on a solution to this problem and so far my best idea is to apply a transformation to the nav mesh. My description of this will be a little hazy as I’m making up terminology to describe the approach…

  • Define a shared edge as a line segment that is shared by two convex polygons in the navmesh. Maybe a.k.a. a “portal” for string-pulling purposes.
  • Define an inner vertex as a vertex in the navmesh for which all attached line segments are “shared edges”. The vertex in the center of the three polygons in the image above is an inner vertex.
  • Identify an inner vertex. Follow its attached shared edges to what I’ll call neighbor vertex. (possible improvement; If the neighbor vertex is also an inner vertex, recurse to its neighbors until all of the neighbors are non-inner.)
  • Remove all shared edges from the navmesh that were traversed in the previous step, forming a new polygon whose border is defined by the neighbor vertices in the previous step. Redefine the edges accordingly (I’ll hand-wave that)
  • Repeat until no inner vertices remain.

The result of this on the example above should result in this:

Transformed navmesh

And with the same A-B path from before, the string-pulling should now result in a straight line:

Transformed navmesh with fixed path planning

I believe that as long as the navmesh has no inner vertices, all paths generated with the approach described in the linked blog post should seem “natural” and not have any surprise corners in what seems like open space.

Per my questions at the beginning of this post, I’m looking for more information, e.g. has anybody else solved this problem before, is there a better way to do it, and is there even a name/term for this problem?

Random variate generation in Type-2 computability

Is there any existing literature on applying the theory of Type-2 computability to the generation of random variates? By “random variate generator” I mean a computable function $ f\colon\subseteq\{0,1\}^{\omega}\rightarrow D$ such that, if $ p$ is a random draw from the standard (Cantor) measure on $ \Sigma^{\omega}$ , then $ f(p)$ is a random draw from a desired probability distribution on $ D$ . Think of $ f$ as having access to an infinite stream of random bits it can use in generating its output value. Note that $ f$ need not be a total function, as long as its domain has (Cantor) measure 1.

It seems to me that the way to proceed would be to require that one specify a topology on $ D$ , in fact a computable topological space [1] $ \boldsymbol{S}=(D, \sigma, \nu)$ where $ \sigma$ is a countable subbase of the topology and $ \nu$ is a notation for $ \sigma$ , and use the standard representation $ \delta_{\boldsymbol{S}}$ of $ \boldsymbol{S}$ . One might also want membership in the atomic properties $ A\in\sigma$ to be “almost surely” decidable; that is, there is some computable $ g_A\colon\subseteq\{0,1\}^{\omega}\rightarrow\{0,1\}$ whose domain has measure 1, such that

$ $ g_A(p) = 1 \mbox{ iff } f(p)\in A$ $

whenever $ p\in\mathrm{dom}(g_A)$ .

I’m working on a problem that needs a concept like this, and I’d rather not reinvent the wheel if this is a concept that has already been well explored.

[1] See Definition 3.2.1 on p. 63 of Weihrauch, K. (2000), Computable Analysis: An Introduction.

Problem generation CSR in windows 10 with openssl

Currently, I have openssl 1.1.1.g running on a Windows 10 system.

I have to generate a new CSR with a key, but somehow it shows up with an error. I can’t seem to find out why, I think it has to do with windows 10. My IT guy said they no experience with openssl on windows systems, unfortunately in this specific case i am forced to use windows 10.

They gave me the following command, I think i get the error due the -config path. My location of OPENSSL = C:\OpenSSL-Win64\bin

Even when I try to change it in the config I get an error in Req.

Someone knows the cause?

openssl req -new -newkey rsa:2048 -nodes -out test.csr -keyout test.key -subj '/C=NL/ST=West-Province/L=Ci ty/O=Test of Organisation/OU=LMAO/CN=test.domain.com/' -reqexts SAN -extensions SAN -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:test.domain.com"))