How to get the Controllpoints of the *hull* of a Bezier Curve? I am currently trying to write a python script for getting the controllpoints of a Bezier curve. I want to use this points in a game, so I can reconstruct the curve there.

Getting points with a python script is easy, but the only thing I can get are two (or more) points on the curve itself - this is not what I want. A Bezier-curve is defined by controlpoints where only start- and endpoint lie on a curve, and at least one point should be outside of it. Those points also make up the convex hull of the curve. 

So my main question is: How can I get the "real" controlpoints of the curve? (Not only the ones with the handles, which lie on a curve).

Additional question: I can get those points from a NURBS-Curve, but can I make a NURBS curve behave like a bezier curve? (When I click the "Bezier"-Checkbox in the "Active-Spline" panel, it doesn't look to me like a proper Bezier curve, as the endpoints don't lie on the curve.

Edit

For clarification, what I would prefer to use is a Bezier curve. What I want for that curve, is 4 control points like the NURBS curve has (= the 4 points of the orange bounding polygon as seen in the NURBS-picture).
(How) can I get those points for a Bezier-curve in blender?
Oh I see the confusion now. The handles of Bezier curve are the "real" control points. These points form the 4 control points for the cubic segment:



And that's also how you convert Bezier to BSplines - per segment. You can make a BSpline segment in Blender with Path curve with 4 points.

You get the described points with text like this:

bpy.data.curves['BezierCurve'].splines[0].bezier_points[1].handle_left
bpy.data.curves['BezierCurve'].splines[0].bezier_points[1].co
bpy.data.curves['BezierCurve'].splines[0].bezier_points[1].handle_right


Like this you get all the blue points.